fundamentos de data mining con r

19
“Fundamentos de Data Mining con R” . www.sgcampus.com.mx

Upload: software-guru

Post on 15-Jul-2015

529 views

Category:

Technology


1 download

TRANSCRIPT

Page 1: Fundamentos de Data Mining con R

 

“Fundamentos de Data Mining con R” .    

   www.sgcampus.com.mx  

Page 2: Fundamentos de Data Mining con R

Temario 1.  Minería de Datos 2.  Herramientas y requerimientos para Minería de datos

a)  R b)  RStudio c)  Shiny d)  Miktex

3.  Auto-aprendizaje utilizando el lenguaje R. 4.  Modelos, técnicas y funciones.

a)  acceso a datos. b)  Descarga c)  lectura de archivos d)  Limpieza básica e)  Extracción de datos f)  Técnicas y minería de datos

5.  Conclusiones 6.  Referencias

Page 3: Fundamentos de Data Mining con R

Objetivo El participante conocerá algunos conceptos

fundamentales de la Minería de Datos a partir del uso de funciones y paquetes del lenguaje R, para facilitar tanto su comprensión y manejo del lenguaje, como de la minería de datos, sus modelos y técnicas.

Page 4: Fundamentos de Data Mining con R

Minería de Datos

•  Minería de Datos, Inteligencia de Negocios y Sistemas de soporte.

Page 5: Fundamentos de Data Mining con R

Minería de Datos

En   la   figura,   se   muestra   el   nivel   de   anidación   de   cada  elemento   del   universo,   donde   se   enmarca   la  minería   de  datos:    un  entorno  o  ambiente  general,  en  el  que  se  sitúa  el   Sistema   de   Soporte   para   la   toma   de   Decisiones  (Decision   Support   Systems),   en   cuyo   seno   se   diseñan,  conforman,   administran,   y   dirigen   los   negocios,   mismos  que   crean   las  bases  de  datos  de   las   cuales   se   aplicará   la  Inteligencia   de   Negocios(Bussines   Intelligence),   para   que  emerja  el  KDD  (Knowledge  Discovery  Data),  que  sigue  una  serie   de   pasos   o   procesos   entre   los   que   destaca   el   DM  (Data  Mining),  herramienta  informáMca  del  KDD  en  la  cual  se  aplican  métodos   inteligentes  para  extraer  patrones  de  datos  (Han  &  Kamber,  2006).    

Minería de Datos, Inteligencia de Negocios y Sistemas de soporte.

Page 6: Fundamentos de Data Mining con R

Minería de Datos

 Existen  cuatro  metodologías:  1.-­‐  SEMMA,  2.-­‐  KDD  Roadmap,  3.-­‐  RAMSYS,  y  4.-­‐  DMIE.  Finalmente,  CRISP-­‐DM  es  un  modelo  con  un  fuerte  componente  metodológico  (Marbán,  Mariscal,  &  Segovia,  2009).    

Metodologías en Minería de Datos,.

Page 7: Fundamentos de Data Mining con R

Minería de Datos Tipologías de la Minería de Datos

  La   Minería   de   Datos   es:   ‘…Extracción   no   trivial   de   información   implícita,   previamente  desconocida  y  potencialmente  úMl  a  parMr  de  datos.”.    

  Existen   algoritmos   tanto   de   aprendizaje   supervisado,   como   de   aprendizaje   no   supervisado  cuyo   conocimiento   y   opMmización   facilita   el   descubrimiento   o   reconocimiento   de   patrones,   a  través  de  la  clasificación  y  la  predicción.    

 

 

 

 

 En  la  MDD,  algunas  variables  son  señaladas  como  el  objeMvo  y  existen  datos  sobre  su  desMno,  mientras   que   en   la   MDI,   no   destaca   ninguna   variable   como   un   objeMvo,   pues   la   meta   es  descubrir  algún  Mpo  de  relación  entre  todas  las  variables.  

Page 8: Fundamentos de Data Mining con R

Herramientas de Data Mining

Herramientas y requerimientos para Minería de datos

Page 9: Fundamentos de Data Mining con R

Auto-aprendizaje mediante R.

Requerimientos para el auto-aprendizaje

a)  Después de instalas las herramientas R , Rstudio, Shiny, Miktex, deberá continuar con la instalación de algunos paquetes adicionales, tales como rmarkdown, laticce, knitr, etc., los cuales podrá ir siguiendo durante la presentación.

b)  En esta primera parte les recomiendo el paquete swirl, install.packages(“swirl"), después d edla instalación deberás escribir library(swirl) para poder utilizarlo.

c)  Después de instalarlo deberán abrirlo a fin de poder obtener información básica,

pero podemos empezar a trabajar con él. En este caso, si no sabes mucho sobre matrices te recomiendo el primer modulo, de otra forma, toma el segundo modulo sobre modelos de regresión. Un buen repaso a nadie le perjudica

 

Page 10: Fundamentos de Data Mining con R

Modelos, técnicas y funciones  

•  R  en  acción  a)  acceso a datos. b)  Descarga c)  lectura de archivos d)  Limpieza básica e)  Extracción de datos f)  Técnicas y minería de datos

Page 11: Fundamentos de Data Mining con R

Modelos, técnicas y funciones  

•  Ejemplos  a)  acceso a datos.

library(XML)  url<-­‐  'hgp://en.wikipedia.org/wiki/World_populaMon'  tbls  <-­‐readHTMLTable  (url)  length(tbls)    tbl  <-­‐readHTMLTable  (url,which=4)  tbl[,c(1:3,5)]  

Page 12: Fundamentos de Data Mining con R

Modelos, técnicas y funciones  

•  R  en  acción   Descarga

# fileUrl <- "link?accessType=DOWNLOAD" if(!file.exists(".UCI_HAR_Dataset")){dir.create("./UCI_HAR_Dataset")} fileUrl <- "https://d396qusza40orc.cloudfront.net/getdata%2Fprojectfiles%2FUCI%20HAR%20Dataset.zip?accessType=DOWNLOAD" # download.file(fileUrl, destfile = "directorio/nombre_archivo.csv", method = "curl") download.file(fileUrl, destfile = "/Users/administrador/Specialization/UCI_HAR_Dataset/UCI_HAR_Dataset.zip", method = "curl”) list.files("../Specialization") dateDownloaded <- date() dateDownloaded ### Step two # Unzziped the file # Set working directory setwd() # Unzipped the data set in 'UCI_HAR_Dataset' # The dataset directory is same as this script. setwd("../Specialization/UCI_HAR_Dataset")

 

Page 13: Fundamentos de Data Mining con R

Modelos, técnicas y funciones  

•  R  en  acción  lectura de archivos

#  Package  Check  and  Install  library(reshape2)  #  or    pkg  <-­‐  "reshape2"  if  (!require(pkg,  character.only  =  TRUE))  {      install.packages(pkg)      if  (!require(pkg,  character.only  =  TRUE))            stop(paste("Load  failure:  ",  pkg))  }    #  Read  dataset  acMviMes  <-­‐  read.table(paste0(dataBaseDirectory,  "acMvity_labels.txt"),  header=FALSE,  stringsAsFactors=FALSE)  features  <-­‐  read.table(paste0(dataBaseDirectory,  "features.txt"),  header=FALSE,  stringsAsFactors=FALSE)  

 

Page 14: Fundamentos de Data Mining con R

Modelos, técnicas y funciones  

•  R  en  acción  lectura de archivos

# Import and prepare the test Data subject_test <- read.table(paste0(dataTestDirectory, "subject_test.txt"), header=FALSE) x_test <- read.table(paste0(dataTestDirectory, "X_test.txt"), header=FALSE) y_test <- read.table(paste0(dataTestDirectory, "y_test.txt"), header=FALSE) tmp <- data.frame(Activity = factor(y_test$V1, labels = activities$V2)) testData <- cbind(tmp, subject_test, x_test) # Import and prepare the train Data subject_train <- read.table(paste0(dataTrainDirectory, "subject_train.txt"), header=FALSE) x_train <- read.table(paste0(dataTrainDirectory, "X_train.txt"), header=FALSE) y_train <- read.table(paste0(dataTrainDirectory, "y_train.txt"), header=FALSE) tmp <- data.frame(Activity = factor(y_train$V1, labels = activities$V2)) trainData <- cbind(tmp, subject_train, x_train) # Tidy Data testTidyData <- rbind(testData, trainData) names(testTidyData) <- c("Activity", "Subject", features[,2]) select <- features$V2[grep("mean\\(\\)|std\\(\\)", features$V2)] tidyData <- testTidyData[c("Activity", "Subject", select)]

 

Page 15: Fundamentos de Data Mining con R

Modelos, técnicas y funciones  

•  R  en  acción  Extracción de datos

# Write Tidy Data to Disk write.table(tidyData, file="./tidyData.txt", row.names=FALSE) # Tidy Data Average/Activity. Melt and Cast. tidyData_Melt <- melt(tidyData, id=c("Activity", "Subject"), measure.vars=select) tidyData_Mean <- dcast(tidyData_Melt, Activity + Subject ~ variable, mean) # Write Tidy Average Data write.table(tidyData_Mean, file="./tidyAverageData.txt", row.names=FALSE) message(" DONE")

Page 16: Fundamentos de Data Mining con R

Modelos, técnicas y funciones  

•  R  en  acción  Limpieza básica microdataSurvey <- read.table("/Users/administrador/Specialization/microdataSurvey.csv", sep = ",", header = TRUE) head(microdataSurvey) # Extraer solamente la columna que me interesa propertyValue <- microdataSurvey[,c(37)] propertyValue # Limpiar datos ld = complete.cases(propertyValue) propertyValue = propertyValue[ld] propertyValue # Utilizo el comando which para saber cuáles índices del vector o columna cumplen con una condición lógica which(propertyValue >= 24) # Asigno el resultado a un vector mayorValue <- which(propertyValue >= 24) # Extraigo el resultado o la cantidad de casos que cumplen con la condición length(mayorValue)  

   

Page 17: Fundamentos de Data Mining con R

Conclusiones

Ante  la  pregunta  de  que  herramienta  es  mejor  para  trabajar  con  Minería   de   Datos,tendré   que   responder   que   aquella   que   les  facilite  más  su  propio  trabajo  y  comprensión  sobre  lo  que  están  haciendo,   Matlab   es   una   buena   opción   pero   Mene   un   costo,  Octave,  es  open  source  pero  conlleva  un  poco  más  de  trabajo,  R  es  una  herramienta   formidable,  pero   como  podrán  notar  exige  cierto   dominio   de   programación   y   sobre   todo   mucho   interés,  teniendo  en   cuenta  que  en  Minería   de  datos   lo   importante  no  son  los  datos,  sino  la  pregunta  que  se  quiere  responder.  

Page 18: Fundamentos de Data Mining con R

Referencias  

1.  Paradis, E.: R para Principiantes, The Comprehensive R Archive Networkhttp://cran.rproject.org/doc/contrib/rdebuts_es.pdf (2003). Accedido el 26 de marzo de 2014.

2.  Sauter, V.L.: Decision Support Systems for Business Intelligence. John Wiley & Sons (2010). 3.  Gilchrist, M.; Lehmann, D.; Skrubbeltrang, G.;Vachon, F.: Knowledge Discovery in Databases for

Competitive Advantage. Journal of Management and Strategy, Vol. 3, No. 2, pp. 2-15 (2012). 4.  Jiawei, H.; Kamber, M.: Data Mining: Concepts and Techniques. Elsevier (2006). 5.  Marbán, O.; Mariscal, G.; Segovia, J.: A Data Mining & Knowledge DiscoveryProcess Model. Ponce,

J.; Karahoca, A.: En Data Mining and Knowledge Discovery in Real Life Applications, I-Tech Education and Publishing, pp. 1-17 (2009).

6.  Torgo, L.: Data Mining with R: Learning with case studies. CRC Press Taylor &Francis Group (2011). 7.  Chapman, P.; Clinton, J.; Kerber, R.; Khabaza, T.; Reinartz, T.; Thomas, C.; Wirth, R.: CRISP-DM 1.0

Step-by-step data mining guide. CRISP-DM Consortium, 8.  ftp://ftp.software.ibm.com/software/analytics/spss/support/Modeler/Documentation/14/User Manual/

CRISP-DM.pdf (2000). Accedido el 17 de Noviembre de 2013.

Page 19: Fundamentos de Data Mining con R

Datos  de  contacto  

"GRACIAS POR SU ATENCIÓN"

""Rafael Reséndiz Ramírez"Instituto de Ingeniería"Universidad Autónoma de Baja California"

"Calle de la Norma s/n y Blvd Benito Juárez, "Col. Insurgentes Este. C.P. 21280"Mexicali, Baja California, México""[email protected]"[email protected] "[email protected]