No hay duda al respecto, Python es una parte crucial de la ciencia de datos moderna. Conveniente y poderoso, Python conecta a los científicos y desarrolladores de datos con una galaxia de herramientas y funcionalidades, de manera conveniente y programática. Aún así, esas herramientas a veces requieren ensamblaje, a veces mucho. Debido a que Python es un lenguaje de programación de propósito general, la forma en que se empaqueta y entrega no se dirige específicamente a los científicos de datos. Pero varios proyectos entregan Python a esa audiencia de una manera preempaquetada, con poco o ningún ensamblaje requerido, algo de lo que los usuarios habituales de Python también pueden beneficiarse. La distribución Anaconda es un reempaquetado de Python dirigido a desarrolladores que usan Python para ciencia de datos. Proporciona una GUI de gestión, una gran cantidad de entornos de trabajo con orientación científica y herramientas para simplificar el proceso de uso de Python para el procesamiento de datos. También se puede utilizar como reemplazo general de la distribución estándar de Python, pero solo si es consciente de cómo y por qué difiere de la versión estándar de Python. Ediciones Anaconda Anaconda consta de dos componentes principales: la distribución Anaconda y los servicios utilizados. con eso. Puede descargar y utilizar la distribución Anaconda sin los servicios. La distribución Anaconda viene en dos ediciones distintas: la versión normal de la distribución y Miniconda, una versión minimizada y muy simplificada de Anaconda. Es una buena opción si sólo necesitas lo básico para empezar. Si, por ejemplo, no desea la GUI de Anaconda, o no desea que su gama completa de herramientas esté preinstalada porque está tratando de conservar espacio en el disco, puede instalar Miniconda y luego instalar en ella sólo los componentes que desee. desear. (Hablaremos más sobre Miniconda más adelante). Los servicios de Anaconda vienen en varios niveles para usuarios individuales y corporativos. Las características para usuarios individuales incluyen alojamiento de hasta cuatro aplicaciones de datos y hasta 20 GB de portátiles alojados en la nube. Las funciones empresariales incluyen controles de repositorio, control de versiones, programación de trabajos y acuerdos de nivel de servicio para el tiempo de actividad. En todos los casos, puede usar la distribución Anaconda indefinidamente sin cargo. Lo que se incluye en AnacondaCPython, la versión de referencia de Python, incluye algunas cosas para hacer la vida más fácil: la biblioteca estándar, el mini-IDE IDLE y la interfaz de usuario Tkinter. biblioteca. Pero todo lo que pueda necesitar para la ciencia de datos es un complemento, incluso las herramientas más básicas. Anaconda, por el contrario, intenta incluir una selección decente de herramientas de ciencia de datos listas para usar. Esto es lo que se incluye de forma predeterminada en la distribución de Anaconda. El intérprete de Python Anaconda incluye de forma predeterminada la versión más reciente del intérprete de Python. Esta no es la compilación estándar de CPython que proviene de Python Software Foundation; es una compilación personalizada, creada por Anaconda Inc. específicamente para la distribución Anaconda. Según Peter Wang, director ejecutivo de Anaconda, el intérprete tiene «indicadores de compilación más seguros en algunas plataformas, mejores optimizaciones de rendimiento en otras». Dicho esto, el intérprete Python de Anaconda debería ser compatible con CPython. Las extensiones C escritas para él deberían funcionar tal como están. Anaconda Navigator Lo más notable que Anaconda agrega a la experiencia de trabajar con Python es una GUI, Anaconda Navigator. No es un IDE, y no intenta serlo, porque la mayoría de los IDE compatibles con Python pueden registrarse y usar el tiempo de ejecución de Anaconda Python por sí mismos. En cambio, Navigator es un sistema organizativo para las piezas más grandes de Anaconda. Con Navigator, puede agregar e iniciar aplicaciones de alto nivel como RStudio o Jupyterlab; gestionar entornos y paquetes virtuales; configurar “proyectos” como una forma de gestionar el trabajo en Anaconda; y realizar diversas funciones administrativas. Aunque Navigator proporciona la comodidad de una GUI, no reemplaza ninguna funcionalidad de línea de comandos en Anaconda o Python en general. Por ejemplo, aunque puede administrar paquetes a través de la GUI, también puede usar la línea de comando para hacerlo. CPython, por el contrario, no tiene una GUI formal. Viene con IDLE, un mini-IDE adecuado para tareas rápidas y únicas. Pero todo lo necesario para gestionar Python tiene que venir de terceros. Con ese fin, algunos IDE proporcionan interfaces GUI para los componentes de CPython. Microsoft Visual Studio, por ejemplo, tiene una GUI para el sistema de administración de paquetes pip de Python, similar a la interfaz de usuario que Anaconda proporciona para su propio administrador de paquetes Conda. IDG Anaconda Navigator proporciona todos los elementos principales de la distribución Anaconda Python a través de una interfaz de usuario configurable por el usuario. Administrador de paquetes CondaPython viene con el administrador de paquetes pip, para instalar y administrar paquetes Python de terceros. Por mucho que los desarrolladores de Python hayan ampliado los poderes de pip a lo largo de los años, todavía es limitado. Solo administra paquetes para Python, no para el resto del sistema. Si un paquete de Python depende de algo externo a Python, la carga de instalarlo y administrarlo por separado recae en el desarrollador. Los desarrolladores de Anaconda lucharon con esta limitación, pero finalmente decidieron diseñar su propia solución: Conda, una solución de administración de paquetes que maneja no solo paquetes de Python sino también dependencias fuera del ecosistema de Python. A continuación se muestra un ejemplo de lo que ayuda Conda: Si tiene varios paquetes de Conda que dependen de un compilador, como GCC o LLVM, Conda puede resolver esa dependencia externa para todos esos paquetes. Puede instalar una única instancia de una versión específica de GCC para todos los paquetes de Conda que la necesiten. pip, por el contrario, tendría que asumir que ya tiene GCC instalado en algún lugar de su sistema o incluir una copia de GCC con cada paquete que lo use. Esta es una solución terriblemente ineficiente y engorrosa. Por lo tanto, Conda no es intercambiable con pip. Ni siquiera utiliza el mismo formato de paquete; Los paquetes creados para pip deben volver a crearse para Conda. Pero casi todos los paquetes importantes utilizados en el ecosistema Python están disponibles a través de Conda. Las herramientas de ciencia de datos de IDG Python a menudo son un nido de dependencias y son difíciles de instalar y administrar. El sistema de administración de paquetes de Anaconda, Conda, que se muestra aquí en su versión GUI, administra tanto los paquetes de Python como cualquier dependencia que tengan fuera del ecosistema de Python. Cómo Anaconda facilita la manipulación de datos Un buen número de mejoras de Anaconda implican el uso diario de Python: mejoras que beneficiarán a la mayoría de los usuarios de Python. Pero los beneficios más importantes están dirigidos específicamente a cómo los usuarios de ciencia de datos a menudo están en desacuerdo con sus entornos Python. Entornos Conda Los paquetes Python, incluso cuando se administran con Conda, no siempre funcionan bien entre sí. A veces, necesitas diferentes versiones de paquetes para proyectos particulares. La característica de entornos virtuales de Python, también conocida como venv, se desarrolló para compensar este problema, pero Conda lleva la idea un paso más allá. Los entornos Conda, como se les llama, son funcionalmente similares a los entornos virtuales de tipo venv. Si desea utilizar versiones específicas de paquetes, o también versiones específicas del intérprete de Python, puede colocarlas en un entorno Conda y utilizarlas de forma aislada. Los entornos Venv se pueden mover, pero no necesariamente tienen información detallada. sobre cómo fueron creados. Esto puede ser un problema si necesita un entorno reproducible para el trabajo que está realizando. Los entornos Conda están destinados a ser reproducibles. Si desea que otras personas utilicen su entorno Conda, les debe proporcionar una copia del archivo de definición de entornos, que describe cómo recrear el entorno en otro sistema. Existen limitaciones sobre qué tan bien esto puede funcionar en forma multiplataforma, por lo que cualquier diferencia entre cómo funcionan los paquetes en diferentes plataformas (como macOS versus Linux) deberá solucionarse manualmente. IDG Tres entornos Conda, cada uno con su propio conjunto de paquetes y tiempos de ejecución de Python. El entorno env-310 utiliza Python 3.10 en lugar de una versión más reciente. El entorno ml-workspace incluye PyTorch (como se muestra en la lista de paquetes a la derecha). Cada entorno de Conda debe tener su conjunto de paquetes actualizados por separado. Proyecto Anaconda Un problema común con la ciencia de datos y el desarrollo de software en general es reproducir el entorno exacto utilizado para un trabajo en particular. Incluso los entornos Conda proporcionan sólo una solución parcial para este problema, porque los entornos de tipo CPython venv no reproducen ni pueden reproducir cosas como variables de entorno. Ingrese al Proyecto Anaconda. Le permite tomar un directorio lleno de cosas relacionadas con algo que está haciendo con Anaconda (“aplicaciones web, scripts, cuadernos Jupyter, archivos de datos, lo que sea”, como dice Anaconda) y convertirlo en un recurso reproducible. Ese directorio, una vez administrado por Anaconda Project, se puede ejecutar de manera consistente sin importar dónde se ejecute, siempre que haya una copia de Anaconda a mano. El mayor problema de Anaconda Project en este momento es que todavía se considera un producto de nivel beta. entonces aún no es estable. Hasta que lo sea, no debería usarse para compartir trabajo en entornos donde no se puede garantizar que todos ejecutarán la misma versión. Mientras tanto, los entornos Conda pueden proporcionar un subconjunto confiable de la misma funcionalidad. Aplicaciones en Anaconda Otra forma en que Anaconda agrega conveniencia al uso de Python para análisis y trabajo científico es cómo agrupa y hace accesibles varios proyectos comunes para trabajar con datos de forma interactiva. Dos de los Los proyectos de este tipo más comunes son Jupyter Notebook y JupyterLab, que proporcionan entornos en vivo para escribir código Python, importar datos, ejecutar experimentos y visualizar los resultados. Anaconda maneja toda la configuración y administración para ejecutar instancias de Notebook y JupyterLab, por lo que trabajar con ellas implica poco más que hacer clic en el botón Iniciar al lado de cada aplicación en el menú principal de Navigator. También puede instalar versiones anteriores de cada aplicación haciendo clic en el ícono de ajustes de la aplicación, suponiendo que estén disponibles. Otras aplicaciones incluidas incluyen: Qtconsole: una GUI para Jupyter que utiliza la biblioteca de interfaz Qt. Es útil si prefiere trabajar con portátiles Jupyter a través de una interfaz nativa de la plataforma que está ejecutando en lugar de a través de un navegador web. Spyder: The Scientific Python Development Environment, un mini-IDE escrito en Python dirigido principalmente a desarrolladores que escriben aplicaciones que funcionan con portátiles IPython/Jupyter. También se puede utilizar como biblioteca para aplicaciones Python que necesitan una interfaz similar a IDE. RStudio: Herramientas para trabajar con el lenguaje R, utilizadas en muchos campos para el análisis de datos. Python ha ganado popularidad entre los usuarios de R, pero todavía hay muchos escenarios en los que R sigue siendo el lenguaje preferido y RStudio proporciona formas de trabajar con los dos lenguajes juntos. Visual Studio Code: el editor de Microsoft puede ser tan simple o tan avanzado como quieras, gracias a su enorme cultura de extensiones. También es uno de los mejores entornos para trabajar con Python. Los usuarios de Anaconda pueden acceder directamente a Visual Studio Code sin tener que instalarlo por separado. IDG Anaconda incluye muchas aplicaciones auxiliares, como Jupyter Notebook, un entorno de trabajo interactivo en el navegador para Python. Anaconda maneja automáticamente todos los detalles de administración de Jupyter. Miniconda: la Anaconda liviana Si desea utilizar Anaconda, pero no desea instalar todo a la vez y no necesita necesariamente el Navegador, puede adoptar un enfoque incremental con Miniconda. Miniconda instala solo el mínimo absoluto que necesita para obtener Comenzó con Anaconda: el intérprete de Python (empaquetado por Anaconda), el administrador de paquetes Conda y algunos otros bits básicos. Puede agregar más componentes o crear entornos usando Conda desde la línea de comandos, tal como lo haría con la versión completa de Anaconda. Vale la pena tener en cuenta algunas cosas. Primero, como se indicó anteriormente, la GUI de Anaconda Navigator no está instalada de forma predeterminada. Sin embargo, si descubre que lo desea, puede agregarlo después en Conda (con el comando conda install anaconda-navigator). En segundo lugar, Miniconda se instala de forma predeterminada en un directorio llamado Miniconda3, en lugar de Anaconda. Esto podría confundir a alguien si busca en el directorio de Anaconda la instalación de Miniconda. Sin embargo, el directorio de instalación se puede personalizar según sea necesario. En tercer lugar (y en cierto modo lo más importante), Conda se puede utilizar sólo para instalar paquetes disponibles a través del propio repositorio de Conda en Miniconda. No se utiliza para instalar paquetes disponibles a través del repositorio de paquetes predeterminado de Python, PyPI. Puede utilizar la herramienta estándar de administración de paquetes de Python, pip, para instalar paquetes de Python desde PyPI dentro de Miniconda. Conda no puede administrar esos paquetes, solo pip, y deberá tomar medidas específicas para permitir que pip y Conda coexistan. Si desea que Conda administre todo, puede volver a empaquetar los paquetes PyPI como paquetes Conda a través de dos -proceso de pasos. Copyright © 2024 IDG Communications, Inc.
Source link
Deja una respuesta