SlideShare una empresa de Scribd logo
1 de 37
Descargar para leer sin conexión
Fernando Pérez
(@fperez_org & fperez@lbl.gov)
LBL & UC Berkeley
Computación
interactiva en “Data
Science”
IPython & Jupyter
–Hamming'62
“The purpose of computing is insight,
not numbers”
“El objetivo de la computación es la
comprensión, no los números”
El ciclo de una idea científica
1. Trabajo individual exploratorio
2. Desarrollo en Colaboración
3. Ejecución en Parallel (HPC, nube, ...)
4. Publicación & comunicación (de manera reproducible!)
5. Educación
6. Goto 1
Tratamos esto como un problema integrado y
coherente
1. Trabajo individual exploratorio
2. Desarrollo en Colaboración
3. Ejecución en Parallel (HPC, nube, ...)
4. Publicación & comunicación (de manera reproducible!)
5. Educación
6. Goto 1
El ciclo de una idea científica
IPython: CU Boulder, 2001
O, cómo evitar trabajar en una tesis doctoral de física de partículas
Noviembre del 2001: “Un hack de una tarde” "
❖ Script Python de 259 líneas.
❖ sys.ps1 -> In [N].
❖ sys.displayhook -> Out[N], cache de resultados.
❖ Graficación, Numeric, etc.
Hoy día
❖ Cientos de miles de líneas de código
❖ Cientos de personas han contribuído
❖ Múltiples individuos trabajando de tiempo completo
El crédito es de todo el equipo
Y más de 500 otros contribuyen en la comunidad
Financiación y colaboraciones
Más allá de la terminal
❖ El REPL como protocolo de red
❖ Kernels
❖ ejecución de código
❖ Clientes
❖ Leer la entrada
❖ Presentar resultado
Unas pocas abstracciones
soportan clientes sofisticados
Carlos Córdoba, Físico de la U. Nal de Bogotá, Continuum (charla previa)
2011: The IPython Notebook
❖ Cliente para la web
❖ Texto & matemática
❖ Código
❖ Resultados
De IPython al Proyecto Jupyter
Una arquitectura simple y genérica
Más allá de Python: kernels en muchos lenguajes
❖ IPython “Oficial", nuestro.
❖ IJulia
❖ IRKernel
❖ IHaskell
❖ IFSharp
❖ Ruby
❖ IScala
❖ IErlang
❖ Muchos más! > 50
“¿Porqué se llama IPython,
si sirve para Julia, R, Haskell, Ruby, … ?”
IPython … Jupyter
❖ Interactive Python shell at the
terminal
❖ Kernel for this protocol in
Python
❖ Tools for Interactive Parallel
computing
❖ Network protocol for
interactive computing
❖ Clients for protocol
❖ Console
❖ Qt Console
❖ Notebook
❖ Notebook file format & tools
(nbconvert...)
❖ Nbviewer
Language Agnostic
Ideas fundamentales: Internet
❖ HTTP y HTML:
❖ Un protocolo para transferir contenido.
❖ Un formato para representarlo.
Ideas fundamentales: Jupyter
Protocolo REPL Formato de documento
https://github.com/CamDavidsonPilon/Probabilistic-Programming-and-Bayesian-Methods-for-Hackers
SUB SUB DEAL
Client
SUB
DEALDEALDEAL
ROUTPUB ROUTROUT
Kernel
ØMQ + JSON
El protocolo Jupyter
es agnóstico al lenguaje
u alj i
El Ecosistema del
Notebook Jupyter
JupyterHub: soporte multiusuario
nbviewer: compartir notebooks sin esfuerzo
❖ Leer notebooks sin
instalar nada
❖ Comparta una URL
❖ nbviewer.jupyter.org
Blogging científico
Jake van der Plas @ UW
http://blogs.scientificamerican.com/
sa-visual/2014/09/16/visualizing-4-
dimensional-asteroids
Libros ejecutables
❖ Libro Springer
❖ Capítulos: Notebooks IPython
❖ Presentados en su blog
❖ Disponible en Github
Python for Signal Processing, por José Unpingco
Cursos Universitarios
Jupyter en Educación (lista de correo):
https://groups.google.com/forum/#!forum/jupyter-education
Berkeley: Foundations of Data Science
http://data8.org
❖ Nuevo currículo para todos
los estudiantes de Berkeley
❖ Libro interactivo hecho de
Notebooks Jupyter
❖ Curso en JupyterHub
Libros sobre IPython
IPython Interactive Computing
and Visualization Cookbook
Learning IPython for Interactive
Computing and Data Visualization
Cyrille Rossant
cyrille.rossant.net
Cambiando la cultura científica
http://www.nature.com/news/interactive-notebooks-sharing-the-code-1.16261
Papers interactivos: ¿el futuro?
http://www.nature.com/news/ipython-interactive-demo-7.21492?article=1.16261
¡Mucho más! La galería de IPython
https://github.com/ipython/ipython/wiki/A-gallery-of-interesting-IPython-Notebooks
Estas fundaciones se han
convertido en infraestructura
Industria: Microsoft, IBM, Google, …
bqplot: gráficos interactivos de Bloomberg
http://github.com/bloomberg/bqplot
Thebe, de O’Reilly: kernels como servicio
Más de 500,000 notebooks en GitHub
Desde Mayo 6 del 2015
Una colaboración en la Unión Europea
¡Gracias!
@fperez_org fperez@lbl.gov
@ProjectJupyter @IPythonDev
Ensáyelo en
try.jupyter.org

Más contenido relacionado

Similar a IPython & Jupyter Computación interactiva en Data Science

Python y la POO, en una clase, UNNe-Corrientes
Python y la POO, en una clase, UNNe-CorrientesPython y la POO, en una clase, UNNe-Corrientes
Python y la POO, en una clase, UNNe-Corrientesalexis ibarra
 
Resumen python
Resumen pythonResumen python
Resumen pythonhedaro
 
Generalidades sobre el Desarrollo de Software
Generalidades sobre el Desarrollo de SoftwareGeneralidades sobre el Desarrollo de Software
Generalidades sobre el Desarrollo de SoftwareUniversidad del Zulia
 
Screencast aprende python - parte 1
Screencast   aprende python - parte 1Screencast   aprende python - parte 1
Screencast aprende python - parte 1Noe Nieto
 
Parallel python sistemas operativos avanzados
Parallel python sistemas operativos avanzadosParallel python sistemas operativos avanzados
Parallel python sistemas operativos avanzadosDaniel Muccela
 
python-para-todos.pdf
python-para-todos.pdfpython-para-todos.pdf
python-para-todos.pdfJaviMartin21
 
Python para todos
Python para todosPython para todos
Python para todosErik Gur
 
python-para-todos.pdf
python-para-todos.pdfpython-para-todos.pdf
python-para-todos.pdfRafalJMalave
 
Python para todos
Python para todosPython para todos
Python para todossebas145713
 
Python_para_todos.pdf
Python_para_todos.pdfPython_para_todos.pdf
Python_para_todos.pdfssuser626fe4
 
Trabajo de python
Trabajo de pythonTrabajo de python
Trabajo de pythonEdgar Lemus
 
Clase 2 - Introducción a la programación con Python I.pptx
Clase 2 - Introducción a la programación con Python I.pptxClase 2 - Introducción a la programación con Python I.pptx
Clase 2 - Introducción a la programación con Python I.pptxjgs07
 
Intro Python
Intro PythonIntro Python
Intro PythonMoreLab
 

Similar a IPython & Jupyter Computación interactiva en Data Science (20)

Python y la POO, en una clase, UNNe-Corrientes
Python y la POO, en una clase, UNNe-CorrientesPython y la POO, en una clase, UNNe-Corrientes
Python y la POO, en una clase, UNNe-Corrientes
 
Resumen python
Resumen pythonResumen python
Resumen python
 
Generalidades sobre el Desarrollo de Software
Generalidades sobre el Desarrollo de SoftwareGeneralidades sobre el Desarrollo de Software
Generalidades sobre el Desarrollo de Software
 
Eventos intropython
Eventos intropythonEventos intropython
Eventos intropython
 
Screencast aprende python - parte 1
Screencast   aprende python - parte 1Screencast   aprende python - parte 1
Screencast aprende python - parte 1
 
Parallel python sistemas operativos avanzados
Parallel python sistemas operativos avanzadosParallel python sistemas operativos avanzados
Parallel python sistemas operativos avanzados
 
Intro python
Intro pythonIntro python
Intro python
 
Intro python
Intro pythonIntro python
Intro python
 
python-para-todos.pdf
python-para-todos.pdfpython-para-todos.pdf
python-para-todos.pdf
 
Python para todos
Python para todosPython para todos
Python para todos
 
Python para Todos
Python para TodosPython para Todos
Python para Todos
 
python-para-todos.pdf
python-para-todos.pdfpython-para-todos.pdf
python-para-todos.pdf
 
Python para todos
Python para todosPython para todos
Python para todos
 
Libro python para todos
Libro   python para todosLibro   python para todos
Libro python para todos
 
Python para todos
Python para todosPython para todos
Python para todos
 
Python_para_todos.pdf
Python_para_todos.pdfPython_para_todos.pdf
Python_para_todos.pdf
 
Python_para_todos.pdf
Python_para_todos.pdfPython_para_todos.pdf
Python_para_todos.pdf
 
Trabajo de python
Trabajo de pythonTrabajo de python
Trabajo de python
 
Clase 2 - Introducción a la programación con Python I.pptx
Clase 2 - Introducción a la programación con Python I.pptxClase 2 - Introducción a la programación con Python I.pptx
Clase 2 - Introducción a la programación con Python I.pptx
 
Intro Python
Intro PythonIntro Python
Intro Python
 

Más de Big Data Colombia

An introduction to deep reinforcement learning
An introduction to deep reinforcement learningAn introduction to deep reinforcement learning
An introduction to deep reinforcement learningBig Data Colombia
 
Machine learning applied in health
Machine learning applied in healthMachine learning applied in health
Machine learning applied in healthBig Data Colombia
 
Whose Balance Sheet is this? Neural Networks for Banks’ Pattern Recognition
Whose Balance Sheet is this? Neural Networks for Banks’ Pattern RecognitionWhose Balance Sheet is this? Neural Networks for Banks’ Pattern Recognition
Whose Balance Sheet is this? Neural Networks for Banks’ Pattern RecognitionBig Data Colombia
 
Analysis of your own Facebook friends’ data structure through graphs
Analysis of your own Facebook friends’ data structure through graphsAnalysis of your own Facebook friends’ data structure through graphs
Analysis of your own Facebook friends’ data structure through graphsBig Data Colombia
 
Lo datos cuentan su historia
Lo datos cuentan su historiaLo datos cuentan su historia
Lo datos cuentan su historiaBig Data Colombia
 
Entornos Naturalmente Inteligentes
Entornos Naturalmente InteligentesEntornos Naturalmente Inteligentes
Entornos Naturalmente InteligentesBig Data Colombia
 
Modelamiento predictivo y medicina
Modelamiento predictivo y medicinaModelamiento predictivo y medicina
Modelamiento predictivo y medicinaBig Data Colombia
 
Ayudando a los Viajeros usando 500 millones de Reseñas Hoteleras al Mes
Ayudando a los Viajeros usando 500 millones de Reseñas Hoteleras al MesAyudando a los Viajeros usando 500 millones de Reseñas Hoteleras al Mes
Ayudando a los Viajeros usando 500 millones de Reseñas Hoteleras al MesBig Data Colombia
 
Deep learning: el renacimiento de las redes neuronales
Deep learning: el renacimiento de las redes neuronalesDeep learning: el renacimiento de las redes neuronales
Deep learning: el renacimiento de las redes neuronalesBig Data Colombia
 
Cloud computing: Trends and Challenges
Cloud computing: Trends and ChallengesCloud computing: Trends and Challenges
Cloud computing: Trends and ChallengesBig Data Colombia
 
Kaggle: Coupon Purchase Prediction
Kaggle: Coupon Purchase PredictionKaggle: Coupon Purchase Prediction
Kaggle: Coupon Purchase PredictionBig Data Colombia
 
Introducción al Datawarehousing
Introducción al DatawarehousingIntroducción al Datawarehousing
Introducción al DatawarehousingBig Data Colombia
 
Análisis Explotatorio de Datos: Dejad que la data hable.
Análisis Explotatorio de Datos: Dejad que la data hable.Análisis Explotatorio de Datos: Dejad que la data hable.
Análisis Explotatorio de Datos: Dejad que la data hable.Big Data Colombia
 
Salud, dinero, amor y big data
Salud, dinero, amor y big dataSalud, dinero, amor y big data
Salud, dinero, amor y big dataBig Data Colombia
 
Business Analytics: ¡La culpa es del BIG data!
Business Analytics: ¡La culpa es del BIG data!Business Analytics: ¡La culpa es del BIG data!
Business Analytics: ¡La culpa es del BIG data!Big Data Colombia
 

Más de Big Data Colombia (19)

An introduction to deep reinforcement learning
An introduction to deep reinforcement learningAn introduction to deep reinforcement learning
An introduction to deep reinforcement learning
 
Machine learning applied in health
Machine learning applied in healthMachine learning applied in health
Machine learning applied in health
 
Whose Balance Sheet is this? Neural Networks for Banks’ Pattern Recognition
Whose Balance Sheet is this? Neural Networks for Banks’ Pattern RecognitionWhose Balance Sheet is this? Neural Networks for Banks’ Pattern Recognition
Whose Balance Sheet is this? Neural Networks for Banks’ Pattern Recognition
 
Analysis of your own Facebook friends’ data structure through graphs
Analysis of your own Facebook friends’ data structure through graphsAnalysis of your own Facebook friends’ data structure through graphs
Analysis of your own Facebook friends’ data structure through graphs
 
Lo datos cuentan su historia
Lo datos cuentan su historiaLo datos cuentan su historia
Lo datos cuentan su historia
 
Entornos Naturalmente Inteligentes
Entornos Naturalmente InteligentesEntornos Naturalmente Inteligentes
Entornos Naturalmente Inteligentes
 
Modelamiento predictivo y medicina
Modelamiento predictivo y medicinaModelamiento predictivo y medicina
Modelamiento predictivo y medicina
 
Ayudando a los Viajeros usando 500 millones de Reseñas Hoteleras al Mes
Ayudando a los Viajeros usando 500 millones de Reseñas Hoteleras al MesAyudando a los Viajeros usando 500 millones de Reseñas Hoteleras al Mes
Ayudando a los Viajeros usando 500 millones de Reseñas Hoteleras al Mes
 
Deep learning: el renacimiento de las redes neuronales
Deep learning: el renacimiento de las redes neuronalesDeep learning: el renacimiento de las redes neuronales
Deep learning: el renacimiento de las redes neuronales
 
Cloud computing: Trends and Challenges
Cloud computing: Trends and ChallengesCloud computing: Trends and Challenges
Cloud computing: Trends and Challenges
 
Kaggle: Coupon Purchase Prediction
Kaggle: Coupon Purchase PredictionKaggle: Coupon Purchase Prediction
Kaggle: Coupon Purchase Prediction
 
Machine learning y Kaggle
Machine learning y KaggleMachine learning y Kaggle
Machine learning y Kaggle
 
Fraud Analytics
Fraud AnalyticsFraud Analytics
Fraud Analytics
 
Data crunching con Spark
Data crunching con SparkData crunching con Spark
Data crunching con Spark
 
Introducción al Datawarehousing
Introducción al DatawarehousingIntroducción al Datawarehousing
Introducción al Datawarehousing
 
Análisis Explotatorio de Datos: Dejad que la data hable.
Análisis Explotatorio de Datos: Dejad que la data hable.Análisis Explotatorio de Datos: Dejad que la data hable.
Análisis Explotatorio de Datos: Dejad que la data hable.
 
Big Data para mortales
Big Data para mortalesBig Data para mortales
Big Data para mortales
 
Salud, dinero, amor y big data
Salud, dinero, amor y big dataSalud, dinero, amor y big data
Salud, dinero, amor y big data
 
Business Analytics: ¡La culpa es del BIG data!
Business Analytics: ¡La culpa es del BIG data!Business Analytics: ¡La culpa es del BIG data!
Business Analytics: ¡La culpa es del BIG data!
 

Último

Data Warehouse.gestion de bases de datos
Data Warehouse.gestion de bases de datosData Warehouse.gestion de bases de datos
Data Warehouse.gestion de bases de datosssuser948499
 
que son los planes de ordenamiento predial POP.pptx
que son los planes de ordenamiento predial  POP.pptxque son los planes de ordenamiento predial  POP.pptx
que son los planes de ordenamiento predial POP.pptxSergiothaine2
 
Croquis de riesgo de trabajo gasolinera.pdf
Croquis de riesgo de trabajo gasolinera.pdfCroquis de riesgo de trabajo gasolinera.pdf
Croquis de riesgo de trabajo gasolinera.pdfhernestosoto82
 
SUNEDU - Superintendencia Nacional de Educación superior Universitaria
SUNEDU - Superintendencia Nacional de Educación superior UniversitariaSUNEDU - Superintendencia Nacional de Educación superior Universitaria
SUNEDU - Superintendencia Nacional de Educación superior Universitariachayananazcosimeon
 
La importancia de las pruebas de producto para tu empresa
La importancia de las pruebas de producto para tu empresaLa importancia de las pruebas de producto para tu empresa
La importancia de las pruebas de producto para tu empresamerca6
 
DIPLOMA DE CERTIFICADO EQQW_removed.pptx
DIPLOMA DE CERTIFICADO EQQW_removed.pptxDIPLOMA DE CERTIFICADO EQQW_removed.pptx
DIPLOMA DE CERTIFICADO EQQW_removed.pptxKaterin yanac tello
 
PREGRADO-PRESENCIAL-FASE-C-202401 (1).pdf
PREGRADO-PRESENCIAL-FASE-C-202401 (1).pdfPREGRADO-PRESENCIAL-FASE-C-202401 (1).pdf
PREGRADO-PRESENCIAL-FASE-C-202401 (1).pdfluisccollana
 
HABILESASAMBLEA Para negocios independientes.pdf
HABILESASAMBLEA Para negocios independientes.pdfHABILESASAMBLEA Para negocios independientes.pdf
HABILESASAMBLEA Para negocios independientes.pdfGEINER22
 
REPORTE-HEMEROGRÁFICO-MARZO-2024-IRAPUATO-¿CÓMO VAMOS?.pdf
REPORTE-HEMEROGRÁFICO-MARZO-2024-IRAPUATO-¿CÓMO VAMOS?.pdfREPORTE-HEMEROGRÁFICO-MARZO-2024-IRAPUATO-¿CÓMO VAMOS?.pdf
REPORTE-HEMEROGRÁFICO-MARZO-2024-IRAPUATO-¿CÓMO VAMOS?.pdfIrapuatoCmovamos
 
El Teatro musical (qué es, cuál es su historia y trayectoria...)
El Teatro musical (qué es, cuál es su historia y trayectoria...)El Teatro musical (qué es, cuál es su historia y trayectoria...)
El Teatro musical (qué es, cuál es su historia y trayectoria...)estebancitoherrera
 
17 PRACTICAS - MODALIDAAD FAMILIAAR.docx
17 PRACTICAS - MODALIDAAD FAMILIAAR.docx17 PRACTICAS - MODALIDAAD FAMILIAAR.docx
17 PRACTICAS - MODALIDAAD FAMILIAAR.docxmarthaarroyo16
 
LA LEY DE LAS XII TABLAS en el curso de derecho
LA LEY DE LAS XII TABLAS en el curso de derechoLA LEY DE LAS XII TABLAS en el curso de derecho
LA LEY DE LAS XII TABLAS en el curso de derechojuliosabino1
 
ESTUDIO DE IMPACTO AMBIENTAL de explotación minera.pptx
ESTUDIO DE IMPACTO AMBIENTAL de  explotación minera.pptxESTUDIO DE IMPACTO AMBIENTAL de  explotación minera.pptx
ESTUDIO DE IMPACTO AMBIENTAL de explotación minera.pptxKatherineFabianLoza1
 
CAPACITACION_higiene_industrial (1).ppt...
CAPACITACION_higiene_industrial (1).ppt...CAPACITACION_higiene_industrial (1).ppt...
CAPACITACION_higiene_industrial (1).ppt...jhoecabanillas12
 
2024 2024 202420242024PPT SESIÓN 03.pptx
2024 2024 202420242024PPT SESIÓN 03.pptx2024 2024 202420242024PPT SESIÓN 03.pptx
2024 2024 202420242024PPT SESIÓN 03.pptxccordovato
 
CUESTIONARIO A ADICCION A REDES SOCIALES.pdf
CUESTIONARIO A ADICCION A REDES SOCIALES.pdfCUESTIONARIO A ADICCION A REDES SOCIALES.pdf
CUESTIONARIO A ADICCION A REDES SOCIALES.pdfEDUARDO MAMANI MAMANI
 
Ivu- taller de diseño arquitectonico l , adicion y sustraccion de cubos,
Ivu- taller de diseño arquitectonico l , adicion y sustraccion de cubos,Ivu- taller de diseño arquitectonico l , adicion y sustraccion de cubos,
Ivu- taller de diseño arquitectonico l , adicion y sustraccion de cubos,juberrodasflores
 
REPORTE DE INCIDENCIA DELICTIVA MARZO 2024.pdf
REPORTE DE INCIDENCIA DELICTIVA MARZO 2024.pdfREPORTE DE INCIDENCIA DELICTIVA MARZO 2024.pdf
REPORTE DE INCIDENCIA DELICTIVA MARZO 2024.pdfIrapuatoCmovamos
 
bases-cye-2024(2) una sola descarga en base de feria de
bases-cye-2024(2) una sola descarga en base de feria debases-cye-2024(2) una sola descarga en base de feria de
bases-cye-2024(2) una sola descarga en base de feria deCalet Cáceres Vergara
 
tipos de organización y sus objetivos y aplicación
tipos de organización y sus objetivos y aplicacióntipos de organización y sus objetivos y aplicación
tipos de organización y sus objetivos y aplicaciónJonathanAntonioMaldo
 

Último (20)

Data Warehouse.gestion de bases de datos
Data Warehouse.gestion de bases de datosData Warehouse.gestion de bases de datos
Data Warehouse.gestion de bases de datos
 
que son los planes de ordenamiento predial POP.pptx
que son los planes de ordenamiento predial  POP.pptxque son los planes de ordenamiento predial  POP.pptx
que son los planes de ordenamiento predial POP.pptx
 
Croquis de riesgo de trabajo gasolinera.pdf
Croquis de riesgo de trabajo gasolinera.pdfCroquis de riesgo de trabajo gasolinera.pdf
Croquis de riesgo de trabajo gasolinera.pdf
 
SUNEDU - Superintendencia Nacional de Educación superior Universitaria
SUNEDU - Superintendencia Nacional de Educación superior UniversitariaSUNEDU - Superintendencia Nacional de Educación superior Universitaria
SUNEDU - Superintendencia Nacional de Educación superior Universitaria
 
La importancia de las pruebas de producto para tu empresa
La importancia de las pruebas de producto para tu empresaLa importancia de las pruebas de producto para tu empresa
La importancia de las pruebas de producto para tu empresa
 
DIPLOMA DE CERTIFICADO EQQW_removed.pptx
DIPLOMA DE CERTIFICADO EQQW_removed.pptxDIPLOMA DE CERTIFICADO EQQW_removed.pptx
DIPLOMA DE CERTIFICADO EQQW_removed.pptx
 
PREGRADO-PRESENCIAL-FASE-C-202401 (1).pdf
PREGRADO-PRESENCIAL-FASE-C-202401 (1).pdfPREGRADO-PRESENCIAL-FASE-C-202401 (1).pdf
PREGRADO-PRESENCIAL-FASE-C-202401 (1).pdf
 
HABILESASAMBLEA Para negocios independientes.pdf
HABILESASAMBLEA Para negocios independientes.pdfHABILESASAMBLEA Para negocios independientes.pdf
HABILESASAMBLEA Para negocios independientes.pdf
 
REPORTE-HEMEROGRÁFICO-MARZO-2024-IRAPUATO-¿CÓMO VAMOS?.pdf
REPORTE-HEMEROGRÁFICO-MARZO-2024-IRAPUATO-¿CÓMO VAMOS?.pdfREPORTE-HEMEROGRÁFICO-MARZO-2024-IRAPUATO-¿CÓMO VAMOS?.pdf
REPORTE-HEMEROGRÁFICO-MARZO-2024-IRAPUATO-¿CÓMO VAMOS?.pdf
 
El Teatro musical (qué es, cuál es su historia y trayectoria...)
El Teatro musical (qué es, cuál es su historia y trayectoria...)El Teatro musical (qué es, cuál es su historia y trayectoria...)
El Teatro musical (qué es, cuál es su historia y trayectoria...)
 
17 PRACTICAS - MODALIDAAD FAMILIAAR.docx
17 PRACTICAS - MODALIDAAD FAMILIAAR.docx17 PRACTICAS - MODALIDAAD FAMILIAAR.docx
17 PRACTICAS - MODALIDAAD FAMILIAAR.docx
 
LA LEY DE LAS XII TABLAS en el curso de derecho
LA LEY DE LAS XII TABLAS en el curso de derechoLA LEY DE LAS XII TABLAS en el curso de derecho
LA LEY DE LAS XII TABLAS en el curso de derecho
 
ESTUDIO DE IMPACTO AMBIENTAL de explotación minera.pptx
ESTUDIO DE IMPACTO AMBIENTAL de  explotación minera.pptxESTUDIO DE IMPACTO AMBIENTAL de  explotación minera.pptx
ESTUDIO DE IMPACTO AMBIENTAL de explotación minera.pptx
 
CAPACITACION_higiene_industrial (1).ppt...
CAPACITACION_higiene_industrial (1).ppt...CAPACITACION_higiene_industrial (1).ppt...
CAPACITACION_higiene_industrial (1).ppt...
 
2024 2024 202420242024PPT SESIÓN 03.pptx
2024 2024 202420242024PPT SESIÓN 03.pptx2024 2024 202420242024PPT SESIÓN 03.pptx
2024 2024 202420242024PPT SESIÓN 03.pptx
 
CUESTIONARIO A ADICCION A REDES SOCIALES.pdf
CUESTIONARIO A ADICCION A REDES SOCIALES.pdfCUESTIONARIO A ADICCION A REDES SOCIALES.pdf
CUESTIONARIO A ADICCION A REDES SOCIALES.pdf
 
Ivu- taller de diseño arquitectonico l , adicion y sustraccion de cubos,
Ivu- taller de diseño arquitectonico l , adicion y sustraccion de cubos,Ivu- taller de diseño arquitectonico l , adicion y sustraccion de cubos,
Ivu- taller de diseño arquitectonico l , adicion y sustraccion de cubos,
 
REPORTE DE INCIDENCIA DELICTIVA MARZO 2024.pdf
REPORTE DE INCIDENCIA DELICTIVA MARZO 2024.pdfREPORTE DE INCIDENCIA DELICTIVA MARZO 2024.pdf
REPORTE DE INCIDENCIA DELICTIVA MARZO 2024.pdf
 
bases-cye-2024(2) una sola descarga en base de feria de
bases-cye-2024(2) una sola descarga en base de feria debases-cye-2024(2) una sola descarga en base de feria de
bases-cye-2024(2) una sola descarga en base de feria de
 
tipos de organización y sus objetivos y aplicación
tipos de organización y sus objetivos y aplicacióntipos de organización y sus objetivos y aplicación
tipos de organización y sus objetivos y aplicación
 

IPython & Jupyter Computación interactiva en Data Science

  • 1. Fernando Pérez (@fperez_org & fperez@lbl.gov) LBL & UC Berkeley Computación interactiva en “Data Science” IPython & Jupyter
  • 2. –Hamming'62 “The purpose of computing is insight, not numbers” “El objetivo de la computación es la comprensión, no los números”
  • 3. El ciclo de una idea científica 1. Trabajo individual exploratorio 2. Desarrollo en Colaboración 3. Ejecución en Parallel (HPC, nube, ...) 4. Publicación & comunicación (de manera reproducible!) 5. Educación 6. Goto 1
  • 4. Tratamos esto como un problema integrado y coherente 1. Trabajo individual exploratorio 2. Desarrollo en Colaboración 3. Ejecución en Parallel (HPC, nube, ...) 4. Publicación & comunicación (de manera reproducible!) 5. Educación 6. Goto 1 El ciclo de una idea científica
  • 5. IPython: CU Boulder, 2001 O, cómo evitar trabajar en una tesis doctoral de física de partículas
  • 6. Noviembre del 2001: “Un hack de una tarde” " ❖ Script Python de 259 líneas. ❖ sys.ps1 -> In [N]. ❖ sys.displayhook -> Out[N], cache de resultados. ❖ Graficación, Numeric, etc. Hoy día ❖ Cientos de miles de líneas de código ❖ Cientos de personas han contribuído ❖ Múltiples individuos trabajando de tiempo completo
  • 7. El crédito es de todo el equipo Y más de 500 otros contribuyen en la comunidad
  • 9. Más allá de la terminal ❖ El REPL como protocolo de red ❖ Kernels ❖ ejecución de código ❖ Clientes ❖ Leer la entrada ❖ Presentar resultado Unas pocas abstracciones soportan clientes sofisticados Carlos Córdoba, Físico de la U. Nal de Bogotá, Continuum (charla previa)
  • 10. 2011: The IPython Notebook ❖ Cliente para la web ❖ Texto & matemática ❖ Código ❖ Resultados
  • 11. De IPython al Proyecto Jupyter
  • 12. Una arquitectura simple y genérica
  • 13. Más allá de Python: kernels en muchos lenguajes ❖ IPython “Oficial", nuestro. ❖ IJulia ❖ IRKernel ❖ IHaskell ❖ IFSharp ❖ Ruby ❖ IScala ❖ IErlang ❖ Muchos más! > 50
  • 14. “¿Porqué se llama IPython, si sirve para Julia, R, Haskell, Ruby, … ?”
  • 15. IPython … Jupyter ❖ Interactive Python shell at the terminal ❖ Kernel for this protocol in Python ❖ Tools for Interactive Parallel computing ❖ Network protocol for interactive computing ❖ Clients for protocol ❖ Console ❖ Qt Console ❖ Notebook ❖ Notebook file format & tools (nbconvert...) ❖ Nbviewer Language Agnostic
  • 16. Ideas fundamentales: Internet ❖ HTTP y HTML: ❖ Un protocolo para transferir contenido. ❖ Un formato para representarlo.
  • 17. Ideas fundamentales: Jupyter Protocolo REPL Formato de documento https://github.com/CamDavidsonPilon/Probabilistic-Programming-and-Bayesian-Methods-for-Hackers SUB SUB DEAL Client SUB DEALDEALDEAL ROUTPUB ROUTROUT Kernel ØMQ + JSON
  • 18. El protocolo Jupyter es agnóstico al lenguaje u alj i
  • 21. nbviewer: compartir notebooks sin esfuerzo ❖ Leer notebooks sin instalar nada ❖ Comparta una URL ❖ nbviewer.jupyter.org
  • 22. Blogging científico Jake van der Plas @ UW http://blogs.scientificamerican.com/ sa-visual/2014/09/16/visualizing-4- dimensional-asteroids
  • 23. Libros ejecutables ❖ Libro Springer ❖ Capítulos: Notebooks IPython ❖ Presentados en su blog ❖ Disponible en Github Python for Signal Processing, por José Unpingco
  • 24. Cursos Universitarios Jupyter en Educación (lista de correo): https://groups.google.com/forum/#!forum/jupyter-education
  • 25. Berkeley: Foundations of Data Science http://data8.org ❖ Nuevo currículo para todos los estudiantes de Berkeley ❖ Libro interactivo hecho de Notebooks Jupyter ❖ Curso en JupyterHub
  • 26. Libros sobre IPython IPython Interactive Computing and Visualization Cookbook Learning IPython for Interactive Computing and Data Visualization Cyrille Rossant cyrille.rossant.net
  • 27. Cambiando la cultura científica http://www.nature.com/news/interactive-notebooks-sharing-the-code-1.16261
  • 28. Papers interactivos: ¿el futuro? http://www.nature.com/news/ipython-interactive-demo-7.21492?article=1.16261
  • 29. ¡Mucho más! La galería de IPython https://github.com/ipython/ipython/wiki/A-gallery-of-interesting-IPython-Notebooks
  • 30. Estas fundaciones se han convertido en infraestructura
  • 32. bqplot: gráficos interactivos de Bloomberg http://github.com/bloomberg/bqplot
  • 33. Thebe, de O’Reilly: kernels como servicio
  • 34. Más de 500,000 notebooks en GitHub
  • 35. Desde Mayo 6 del 2015
  • 36. Una colaboración en la Unión Europea