{ "cells": [ { "cell_type": "markdown", "metadata": {}, "source": [ "# Introducción a IPython Jupyter\n", "\n", "\n", "## ¿Que es Jupyter?\n", "\n", "Una de las características más útiles de Python es su intérprete interactivo. Esto permite el ensayo muy rápido de ideas. Sin embargo, el intérprete suministrado con la distribución estándar de Python es algo limitada para el uso interactivo extendida.\n", "\n", "El objetivo de IPython es crear un entorno completo para la computación interactiva y exploratorio. Para apoyar este objetivo, IPython tiene tres componentes principales:\n", "\n", "* Un terminal de Python interactiva mejorada.\n", "* Un modelo de comunicación de los dos procesos desacoplado, lo que permite que varios clientes se conectan a un núcleo de cálculo, más notablemente el portátil basado en la web\n", "* Una arquitectura de computación paralela interactiva.\n", "\n", "Jupyter (originalmente llamado IPython) fue desarrollado por Fernando Perez pensando en facilitar la reproducibilidad científica. Hoy en día cuenta con un gran número de colaboradores.\n", "\n", "## Corriendo Jupyter\n", "\n", "Existen tres formas de correr Jupyter:\n", "\n", "* Terminal\n", "```\n", "$ ipython\n", "```\n", "\n", "* Consola Qt\n", "```\n", "$ jupyter qtconsole\n", "```\n", "\n", "* Notebook\n", "```\n", "$ jupyter notebook\n", "```\n", "\n", "## Comenzemos" ] }, { "cell_type": "code", "execution_count": 1, "metadata": { "collapsed": true }, "outputs": [], "source": [ "import numpy as np" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "**Tab** nos completa o nos muestra las opciones (usa un mismo namespace para todo el notebook)" ] }, { "cell_type": "code", "execution_count": 2, "metadata": { "collapsed": false }, "outputs": [], "source": [ "a = np.array([1, 2, 3])\n", "a." ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "**Shift-Tab** nos da la documentación de la función - método" ] }, { "cell_type": "code", "execution_count": 3, "metadata": { "collapsed": false }, "outputs": [], "source": [ "np.array()" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Magic\n", "\n", "Jupyter define las *magic* que son comando (generalmente comienzan con %) que nos permite, entre varias cosas, hacer uso de nuestro shell, correr código, medir tiempos, etc." ] }, { "cell_type": "code", "execution_count": 4, "metadata": { "collapsed": false }, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "1000 loops, best of 3: 1.5 ms per loop\n" ] } ], "source": [ "%%timeit \n", "\n", "a = 0\n", "for i in range(10000):\n", " a += 1" ] }, { "cell_type": "code", "execution_count": 5, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/plain": [ "['Hands-On',\n", " 'imgs',\n", " 'introduccion_a_python.pdf',\n", " 'introduccion_a_python.sla',\n", " 'Introducción_IPython.ipynb']" ] }, "execution_count": 5, "metadata": {}, "output_type": "execute_result" } ], "source": [ "!!ls" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "Podemos correr coódigo R y capturar la salida como variables para Python. Se necesita el paquete [rpy2](https://rpy2.readthedocs.io/en/version_2.8.x/)" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## De IPython a Jupyter\n", "\n", "El cambio de nombre, vino por un gran cambio en el proyecto. La nueva versión del *notebook* nos permite cargar *kernels* de Julia, PYthon o R\n", "\n", "## Introduciendo texto\n", "\n", "Cambiando la celda de **codigo** a **markdown** podemos introducir texto, [link](https://ipython.org/), latex\n", "\n", "$$ a^{2} = b^{2} + c^{2} \\;\\;\\; a, b, c\\; \\exists\\; N $$\n", "\n", "Imagenes, videos, etc" ] }, { "cell_type": "code", "execution_count": 9, "metadata": { "collapsed": false }, "outputs": [ { "data": { "image/jpeg": "/9j/4AAQSkZJRgABAQAAAQABAAD/2wCEAAUDBAgICAgICAgICAgICAgICAgICggICAgICAgICAgI\nCAgIChALCAgOCggIDRUNDhERExMTCAsWGBYSGBASExIBBQUFCAcIDwgIDRINDQ0UEhQUFBQUFBQU\nFBIUFRQVEhQUFBQUFBQUFRQUFRQUEhIUEhQUFBQUFBQUFBQUFRQUFP/AABEIAWgB4AMBIgACEQED\nEQH/xAAdAAEAAgIDAQEAAAAAAAAAAAAABQYDBAECBwkI/8QAWxAAAgEDAgIEBgoPBAcGBgMBAQID\nAAQRBRITIQYUMVIHIkGS0tMWIzIzUWFzkZPRFRckNEJUVVZxdIGUlbK0Y6Kz4jVTYnWhtcMlQ2Ry\no7FEgoPB1PDC4fEI/8QAGwEBAQACAwEAAAAAAAAAAAAAAAECAwQFBgf/xAA+EQEAAQICBgYHAwwD\nAAAAAAAAAQIRAwQFEiExQWEGMlFxcsETIkKBkbHRM8LwFBUjNDVSYnOhstLhU4Lx/9oADAMBAAIR\nAxEAPwD8ZUpSgUpSgUpSgUpSgUpSgUpSgUpSgUpSgUpSgUpSgUpSgUpSgUpSgUpSgUpSgUpSgUpS\ngUpSgUpSgUpSgUpSgUpSgUpSgUpSgUpSgUpSgUpSgUpSgUpSgUpSgUpSgUpSgUpSgUpSgUpSgUpS\ngUpSgUpSgUpSgUpSgUpSgUpSgUpSgUpSgUpSgUpSgUpSgUpSgUpSgUpSgUpSgUpSgUpSgUpSgUpS\ngUpSgUpSgUpSgUpSgUpSgUqxHoVqf4sPprb1tB0I1Q8+rcuz323+P+0+I/NUvArtKsfsI1T8WH01\nt62uPYRqf4sPprb1tLwK7SrEehWpj/4cfTW3ra5foPqgJBtcEHBBltwQR2ggycjS8CuUqxewnU/x\nYfTW3ra5ToPqhIAtck9gEtsSf0AS0vArlKsfsI1T8WH01t62uPYTqf4sPprb1tLwK7SrLH0E1ZuS\n2hbsHiyW7cycAcpO0kgftrp7CdT/ABYfTW3raXFdpVjPQfVByNrg/AZbcf8AUo/QfVAcG1wR2gy2\n4I/ZxKXFcpVi9hOp/iw+mtvWU9hWp/iw+mtvWUuK7SrF7CtT/Fh9Nbesp7CtT/Fh9NbespcV2lWL\n2Fan+LD6a29ZT2Fan+LD6a29ZS4rtKsXsK1P8WH01t6ynsK1P8WH01t6ylxXaVYvYVqf4sPprb1l\n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\ncet6uiNjciX96qNhOGNyrLg+J4vPycq6+z3XeR+zWrZDFwevXnJmJLMPbeTEk5PxmiPpTeeC6yMF\npaG/nQwtK0WeAXdmmhnLIkikBlMajIHISOPwq2W8HEClAb6ZCzzBVxEvEaW14BiGMMyrDFyUHsi+\nKvmXJ071xljVtZ1VlhDCJWvbwrEGYOwjBlwgLKCcdpANd38IGvMFU63q5VJjcoDfXhCXBVlNwoMv\nizbXcbxzw7c+dB9Q9A6FQ2Eq3IuppHjUgvPwyOGVQSZwAqeKmAVwFUKMYUVbY3VgGUgqwBVgchgR\nkEHygivkgnhB19ezXNXHiunK/vR4kmTInKX3Lbjkdhyc1w3T/XjtB1vVyEDKmb68O1XBVlX23xQQ\nSCB2g1R9bo5kYsqspZcblBBK5zjcB2dh+Y1kr5FL071wYxrOqjBJGL275EgqSPbeRwSP0Gt218KH\nSaJFji6Ra7HGowqR6lqCIoznCqs2AMk1B9aKV8m/tsdKfzl6QfxTUfX0+2x0p/OXpB/FNR9fQfWS\nlfJv7bHSn85ekH8U1H19PtsdKfzl6QfxTUfX0H1kpXyb+2x0p/OXpB/FNR9fT7bHSn85ekH8U1H1\n9B9ZKV8m/tsdKfzl6QfxTUfX0+2x0p/OXpB/FNR9fQfWSlfJv7bHSn85ekH8U1H19PtsdKfzl6Qf\nxTUfX0H1kpXyb+2x0p/OXpB/FNR9fT7bHSn85ekH8U1H19B9ZKV8m/tsdKfzl6QfxTUfX0+2x0p/\nOXpB/FNR9fQfWMsOzIz8Hlrmvkw3hT6Tk5PSPXifhOp6hn/Hrv8AbY6U/nL0g/imo+voPrJSvk39\ntjpT+cvSD+Kaj6+n22OlP5y9IP4pqPr6D6yUr5N/bY6U/nL0g/imo+vp9tjpT+cvSD+Kaj6+g+sl\nK+Tf22OlP5y9IP4pqPr6fbY6U/nL0g/imo+voPrJUFrseZkOSPFjTAR5OcjuAx2A7VGOZOBz5kV8\nuPtsdKfzl6QfxTUfX10fwp9J25t0j14nBHPU9QPI9o5z9hwPmoKfSlKBSlKBSlKBSlKBSlKBSlKB\nSlKBSlKBSlKBSlKBSlKBSlKBSlKBSlKBSlKBSlKBSlKBSlKBSlKBSlKBSlKBSlKBSlKBSlKBSlKB\nSlKBSlKBSlKBSlKBSlKBSlKBSlKBSlKBSlKBSlKBSlKBSlKBSlKBSlKBSlKBSlKBSlKBSlKBSlKB\nSlKBSlKBSlKBSlKBSlKBSlKBSlKBSlKBSlKBSlKBSlKBSlKBSlKBSlKBSlKBSlKBSlKBSlKBSlKB\nSlKBSlKBSlKBSlKBSlKBSlKBSlKBSlKBSlKBSlKBSlKBSlKBSlKBSlKBSlKBSlKBSlKBSlKBSlKB\nSlKBSlKBSlKBSlKBSlKBSlKBSlKBSlKD/9k=\n", "text/html": [ "\n", " \n", " " ], "text/plain": [ "" ] }, "execution_count": 9, "metadata": {}, "output_type": "execute_result" } ], "source": [ "from IPython.display import YouTubeVideo\n", "YouTubeVideo(\"bxtLxUh03gc\")" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "## Ciencia reproducible\n", "\n", "Podemos subir el *notebook* a nuestro servido git preferido y luego con [nbviewer](https://nbviewer.jupyter.org/) renderizarlo para que alguien lo vea.\n", "\n", "Por ej, [este notebook](http://nbviewer.ipython.org/github/pewen/ten/blob/master/IPython_notebook/01_Puntos_aleatorios_en_esfera.ipynb)" ] }, { "cell_type": "code", "execution_count": 6, "metadata": { "collapsed": false }, "outputs": [ { "data": { "text/html": [ "\n", "\n", "\n", "\n", "\n", "\n", "\n", "\n", "" ], "text/plain": [ "" ] }, "execution_count": 6, "metadata": {}, "output_type": "execute_result" } ], "source": [ "#Este css es trabajo de @LorenaABarba y su grupo\n", "from IPython.core.display import HTML\n", "css_file = '../css/personal.css'\n", "HTML(open(css_file, \"r\").read())" ] }, { "cell_type": "markdown", "metadata": {}, "source": [ "##### Licencia\n", "\n", "El código esta licenciado bajo MIT.\n", "\n", "La documentación bajo:\n", "\n", "\"Creative
This work is licensed under a Creative Commons Attribution 4.0 International License." ] } ], "metadata": { "kernelspec": { "display_name": "Python 3", "language": "python", "name": "python3" }, "language_info": { "codemirror_mode": { "name": "ipython", "version": 3 }, "file_extension": ".py", "mimetype": "text/x-python", "name": "python", "nbconvert_exporter": "python", "pygments_lexer": "ipython3", "version": "3.5.2" } }, "nbformat": 4, "nbformat_minor": 0 }