Lectura Extension Fundamentos Rafa Ventura


74KB Größe 7 Downloads 119 vistas
R Fundamentals Rafael Ventura 2017-02-25 Objetivos 1 Toma de contacto con la preparación de datos usando R, en particular la transformación, cálculo de métricas derivadas y enriquecimiento de datos. 2 Aprender los fundamentos de la exploración de datos previa a la preparación de modelos

Actividades 1) Leer datos Importar la tabla transactions de la base de datos focus40_mdaworkshopr en el data frame transactions. Es necesario utilizar la librería RODBC 1 y la funciones odbcConnect y SQLFetch()1 . Ver post de Joseph Rickert[1]

2) Modificar formato de datos Cambiar el tipo de dato del campo Date de tipo factor a tipo date con el formato “YYYY-mm-dd”, usando la función as.Date()2 .

2

Ver Jeff Leeks [2]

3

Jeff Leek [2]

4

Jeff Leek [2]

5

Ibid Ver función seq()[3]

3) Tratamiento de cabeceras Eliminar el caracter “_" de las cabeceras de la tabla, usando la función sub()3 . Cambiar todas la cabeceras a minúsculas usando la función tolower()4 .

4) Métricas derivadas Asignar los meses desde la última compra (campo recenciacompra) a un rango desde 0 a 60 meses en intervalos de 6 meses cada uno y añadir al data frame transactions obtenido en la actividad 1 con el nombre timeranges. Se utilizará la función cut()5 y seq()6 .

6

6) Enriquecimiento de datos Importar los datos de provincia de cada cliente desde el fichero mda_client_prov.csv y añadir el código de la provincia al data frame transactions mediante la función merge()7 . Identificar el campo por que se han de cruzar ambos conjuntos de datos.

7

Jeff Leek [2]

r fundamentals

2

Importar los datos de las campañas de marketing desde el fichero campaign-data.csv y enriquecer los datos de ventas con los datos de

las campañas de marketing online usando la función merge()8 . Es importante tener en cuenta que deben mantenerse todas las transacciones después del cruce.

8

Jeff Leek[2]

9

Ver función plot()[4]

7) Exploración de datos Crear un histograma de frecuencia del número de clientes por código de provincia, usando la funcion plot()9 . Crear un gráfico de dispersión ltv vs compra24m para cada provincia en el mismo gráfico y cuadrículas diferentes usando la función xyplot() de la librería lattice10 . Comparar con los gráficos creados con ggplot.

10

Ver función xyplot de Lattice[5]

11

Ver referencia [6]

12

ver [7]

8) Aplicación de filtros y selección de datos Crear un sub-conjunto del data frame transactions con las compras realizadas solo durante los últimos 24 meses usando la función subset()11 y guardarlo en otro data frame.

9) Muestreo Obtener una muestra con el 5% del total de registros del sub-conjunto creado en el paso 8 usando la función sample()12 .

Datos Detalles de la conexión: Servidor: yoohoo.lunarbreeze.com Puerto: 3306 Base de datos: focus40_mdaworkshopr Usuario: focus40_mda Password: tB2!K*gH1.Hh

Referencias [1] Joseph Rickert, Using Azure as an R datasource: Part 2- Pulling Data from MySQL/MariaDB: Connecting to the database from R on Windows. (http://www.r-bloggers.com/using-azure-as-an-r-datasource-part-2-pulling-data-from-mysqlmariadb/) [2] Jeff Leeks, Data Munging Basic(https://www.dropbox.com/s/ m5qpzo2qs5hs55k/dataMungingBasics.pdf?dl=0). Especialmente las funciones cut(), merge(),

r fundamentals

[3] R Development Core team, R Documentation. Función seq()(http: //stat.ethz.ch/R-manual/R-devel/library/base/html/seq.html).

[4] R Development Core team, R Documentation.Función plot()(https: //stat.ethz.ch/R-manual/R-devel/library/graphics/html/plot. html).

[5] Roger Peng, Lattice Functions (https://www.dropbox.com/s/ kr4fmzx91ebv094/slides_PlottingLattice.pdf?dl=0). [6] R Development Core team, R Documentation.Función subset()(https: //stat.ethz.ch/R-manual/R-devel/library/base/html/subset. html).

[7] Jeff Leeks. Simulation Basics. Función sample(); diapositivas 913. (https://www.dropbox.com/s/35i7gzn9yv66irw/simulationBasics. pdf?dl=0)

3