Conectar Qlikview y R

En el siguiente post vamos a conectar Qlikview con R. Si desde Qlikview necesitamos realizar tareas de clasificación y predicción podemos conectar con R y hacerlo en los scripts de R para después visualizarlo y analizarlo en Qlikview.

  

 

Cargamos los siguientes datos:

 

Consumo_clientes:
LOAD * INLINE [
cod_cliente,     estado_civil, profesion,  ciudad,  Consumo,  
    1,         Casado,      Empresario,     Madrid,             30
    2,         Casado,      Empresario,     Madrid,             31
    3,         Soltero,     Empresario,     Madrid,             32
    4,         Casado,       Desempleado,    Madrid,             33
    5,         Casado,       Empleado,       Madrid,             29
    6,         Viudo,       Empleado,       Barcelona,             28
    7,         Soltero,     Empleado,       Barcelona,             20
    8,         Casado,      Empleado,    Barcelona,             21
    9,         Casado,      Empleado,       Barcelona,             22
    10,       Casado,       Desempleado,    Valencia,             19
    11,        Casado,      Empleado,    Valencia,             20
    12,        Soltero,     Empleado,    Valencia,             10
    13,        Soltero,     Empresario,     Valencia,             11
    14,        Casado,       Desempleado,    Lisboa,             12
    15,       Soltero,     Empresario,     Lisboa,             9
    16,       Casado,      Empleado,    Lisboa,             10
    17,       Soltero,     Empleado,       Lisboa,             11];

 

 

Exportamos a csv:

 

STORE Consumo_clientes into C:\temp\R\ficheros\clientes1.csv (txt);

DROP TABLE Consumo_clientes;

 

Vamos a realizar un clustering de clientes basado en el campo consumo, utilizando el algoritmo k-means y para ello llamamos a un script de R, ya que el k-means no está soportado por Qlikview.

 

Llamamos a R utilizando el comando EXECUTE

 

EXECUTE "C:\Program Files\R\R-3.2.1\bin\R.exe" CMD BATCH "C:\temp\R\scripts\agrup_clientes.R";  

 

El script de R realiza lo siguiente:

 

------------------------------------------------------------------------

 

#Importar fichero

clientes1 <- read.csv("C:/temp/R/ficheros/clientes1.csv")

consumo <- clientes1$Consumo

 

#Agrupación utilizando k-means con 3 grupos

km_res <- kmeans(consumo, 3)

 

#Le añado a la tabla el centro en que ha caído cada valor

clientes1$grupo <- km_res$cluster

 

# Exportamos ficheros con cluster

write.csv(clientes1, file = "C:\\temp\\R\\ficheros\\clientes2.csv")

 

------------------------------------------------------------------------

 

Finalmente leemos el fichero de salida de R en Qlikview para poder visualizarlo.

 

LOAD cod_cliente, 
     estado_civil, 
     profesion, 
     universitario, 
     Consumo, 
     grupo
FROM
[C:\temp\R\ficheros\clientes2.csv]
(txt, codepage is 1252, embedded labels, delimiter is ',', msq);

 

Creamos un gráfico de rejilla para visualizar los grupos:

Dimensiones: cod_cliente y grupo

Expresión: consumo

 

 

 

Más info y formación en B.I. especializada en: datademy