Presentación de PowerPoint

Leganés
12-13 Febrero 2015
José M. Valls Ferrán y Ricardo Aler Mur
Lenguaje R y Minería de Datos
Except where otherwise noted, this work is licensed under: http://creativecommons.org/licenses/by-nc-sa/3.0/
Leganés
12-13 Febrero 2015
Título de la Ponencia
¿Qué es R?
• R es un lenguaje de programación, potente, funcional y orientado a
objetos
• Está orientado al análisis de datos
• Estructuras de datos especializadas (data.frames)
• Por ejemplo, maneja directamente valores faltantes (NAs)
• Instrucciones para la manipulación de datos (data wrangling / data munging /
data tyding, …): formatos long / wide, limpieza, resúmenes, merge, …
• Las operaciones estadísticas (tests estadísticos, distribuciones, modelos
lineales, ) han sido realizadas y probados por especialistas
• Muchas librerías / paquetes de aprendizaje automático, de buena calidad,
listos para usar
• Potentes gráficos estáticos
2
Leganés
12-13 Febrero 2015
Lenguaje R y Minería de Datos
Historia de R
• R es un dialecto del lenguaje S
• S fue desarrollado por John Chambers en los laboratorios Bell en
1976. El objetivo era facilitar el análisis estadístico. Inicialmente usaba
librerías en Fortran, después fueron reescritas a C.
• Característica de S: análisis de datos interactivo y también posibilidad
de escribir scripts (programas)
• En la actualidad es propiedad de TIBCO (25 millones de dolares)
Leganés
12-13 Febrero 2015
Lenguaje R y Minería de Datos
Historia de R
• R se crea en 1991 en Nueva Zelanda por Ihaka y Gentleman, con el
objetivo de tener similares posibilidades a S. Sintaxis similar aunque
los detalles internos son distintos
• En el 2000 se crea R 1.0.0 con licencia GNU GPL (software libre)
• La versión 3.0.2 salió en Diciembre 2013. Desarrollo muy activo
• Ejecuta en cualquier plataforma (al parecer incluso en Playstation 3)
Leganés
12-13 Febrero 2015
Lenguaje R y Minería de Datos
Ventajas de R:
• Es libre
• Es bastante ligero (comparar el arranque de R con el arranque de Matlab)
• Orientado al proceso y análisis de datos (con data.frames). El acceso a
matrices y data.frames es parecido al de Matlab (ej: m[1:10,1:2] accede a
las diez primeras líneas de la matriz y a las dos primeras columnas)
• Gráficos potentes
• El más utilizado en análisis de datos (según encuestas)
• Comunidad muy activa. 4000 paquetes desarrollados, fácilmente
instalables, y disponibles en CRAN: http://cran.r-project.org/
• Mucha documentación y libros sobre el lenguaje
Leganés
12-13 Febrero 2015
Lenguaje R y Minería de Datos
Y en dominios especializados
Leganés
12-13 Febrero 2015
Lenguaje R y Minería de Datos
Desventajas
• El procesamiento es con datos en memoria (no tan bueno para conjuntos de datos
masivos, aunque dispone de alternativas: comunicación con mySQL, paquetes para que
los datos residan parcialmente en disco, …)
• H2O: http://0xdata.com/blog/2013/08/run-h2o-from-within-r/
• pbdR: programming with big data in R
• Revolution Analytics, RHadoop
• Poco soporte para gráficos en 3D, gráficos dinámicos y gráficos interactivos, aunque en
el último año han aparecido maneras de generar gráficos interactivos en javascript
desde R, con Shiny, rCharts, ggvis, …
• http://shiny.rstudio.com/gallery/
• Ej: http://shiny.rstudio.com/gallery/nvd3-line-chart-output.html
• http://rcharts.io/gallery/
• No muchas de las librerías / paquetes trabajan internamente con paralelismo / multicore (aunque se puede usar de manera explícita tanto en clusters como en multi-core)
http://www.k
dnuggets.co
m
Leganés
12-13 Febrero 2015
Lenguaje R y Minería de Datos
R en la revista nature y su uso en investigación
http://www.nature.com/news/programming-tools-adventures-with-r-1.16609
Leganés
12-13 Febrero 2015
Lenguaje R y Minería de Datos
Solapes entre lenguajes
Herramientas usadas en kaggle (por
ganadores de competición)
https://www.kaggle.com/wiki/Software
Leganés
12-13 Febrero 2015
Lenguaje R y Minería de Datos
Analysis of Data Science Job postings
http://www.datasciencecentral.com/profiles/blogs/popular-software-skills-in-data-science-job-postings
Data Scientist/ Data Analyst for BI & Big Data
?? - Madrid, España
• Requirements
• Master degree on Mathematics/Statistics/Computer Science.
• Proved experience on facing data analysis challenges within a corporate environment.
• The candidate should have proficient knowledge of the following tools:
• Deep knowledge of statistics/machine learning techniques (classification, predictive
modelling, clustering...).
• Programming skills in python / R (mandatory) and specific expertise in data analysis
libraries.
• Programming skills for interacting with SQL databases (mandatory).
• Analysis of data within Big Data environments (Hadoop/HDFS, MapReduce, Hive, Pig…)
• Ability to communicate results with graphical tools to non-technical stakeholders.
• Experience
• 3 years minimum of experience as a data scientist with proven skills in Statistics/Machine
Learning analysis.
• 2 years of experience in R/Python
Data Scientist - ?? - Spain
• Basic Qualifications:
• B.S. degree in Machine Learning, Statistics, Mathematics, Computer Science,
Operations Research
• 3+ years of Machine Learning techniques
• 3+ year R/SAS/Matlab and SQL (or similar scripting language)
• 3+ years of hands-on industry experience in large data analyses, statistical analyses
and predictive data models from scratch with business impact
• Ability to use data and metrics to back up business cases, planning, and decisions
• Excellent communication and data presentation skills
• Fluent written and spoken English
• Desired Qualifications:
• MSc in Machine Learning, Statistics, Mathematics, Computer Science, Operations
Research