Free Trial

Base de conocimiento

Dominio de Herramientas | Python

FláviaB
Alteryx Community Team
Alteryx Community Team
Created

Python.png

Este artículo es parte de la serie Dominio de Herramientas, una compilación de contribuciones a la Base de Conocimiento para introducir diferentes ejemplos prácticos de las herramientas de Alteryx Designer. Vamos a profundizar en los usos de la herramienta Python en nuestro camino hacia el dominio de Alteryx Designer:

 

Python es uno de los lenguajes de programación que más rápido creció a nivel mundial, y se utiliza para una gran variedad de aplicaciones, desde la manipulación básica de datos al desarrollo de la ciencia de datos y de software. Con el lanzamiento de la versión 2018.3, llego la tan esperada y tan anticipada herramienta Python. Como la herramienta R, la herramienta Python te permite ejecutar códigos como parte de tu flujo de trabajo de Alteryx. Igual que con la herramienta R, deberás tener alguna experiencia con codificación en el idioma identificado para aprovechar al máximo esta herramienta. En este artículo, te ofrecemos una introducción a los principios de uso básico para esta herramienta.

 

Cuando sueltes la herramienta Python por primera vez en tu lienzo, verás una pantalla en la ventana de configuración de la herramienta. Esto es un recordatorio para que ejecutes el flujo de trabajo cuando conectes la herramienta Python a una nueva fuente de datos de entrada. Esto incorpora los datos de entrada a la herramienta Python para que puedas ingresarlos a tu código Python.

 

Como dice el mensaje, para que la interfaz de Jupyter Notebook comience a funcionar, solo tienes que esperar. La interfaz de Jupyter Notebook tarda unos segundos en iniciarse la primera vez que abres una herramienta Python en Designer. Luego, el mensaje se reemplaza por una interfaz de Jupyter notebook.

 

2018-11-19_8-10-31.png

 

Para una introducción general de Jupyter Notebook, consulta la Guía para principiantes . 

 

El primer paso para utilizar la herramienta Python es importar el paquete API de Alteryx, que te permite transferir datos entre Alteryx Engine y la herramienta Python. Si planeas leer datos de Alteryx Engine o extraer datos de la herramienta Python al Engine, el código debe comenzar con:

 

from ayx import Alteryx

 

Este código es tan fundamental que se ingresa automáticamente en la primera celda de la herramienta Python.

 

2018-11-19_8-10-31.png

 

Para ejecutar una celda individual en la herramienta Python, haz clic en el botón "Run" en la barra de herramientas superior o usa el atajo de teclado: shift + regresar.

 

2018-11-19_8-14-33.png

 

Además del paquete ayx, la herramienta Python viene con algunos paquetes Python precargados. Estos paquetes están enumerados en la documentación de ayuda y están relacionados principalmente con la ciencia de datos. También hay un artículo muy útil que repasa la funcionalidad de cada uno de estos paquetes preinstalados. Para cargar un paquete que ya está instalado, puedes utilizar el comando "import", como lo harías al crear un script de Python fuera de Alteryx. Si quieres instalar una biblioteca Python que no esta incluida en la herramienta, puedes utilizar la función Package.installPackages().

 

2018-11-19_8-18-33.png

 

Un asterisco * donde se  suele mostrar el número de celda significa que la celda está ejecutándose.

 

Cuando un paquete se instala bien, verás algunas variaciones de los siguientes mensajes, relacionadas con las dependencias y con la versión del paquete instalado.

 

2018-11-19_8-28-24.png

 

Si te gustaría continuar con esta demostración,  descarga el conjunto de datos Iris adjunto en este artículo.

 

Si estás ingresando datos mediante el ancla de entrada en Alteryx, es necesario ejecutar el flujo de trabajo para que los datos entrantes estén disponibles para Jupyter Notebook. Después de ejecutar el flujo de trabajo, puedes utilizar la función Alteryx.read() para traer los datos a Python.

El único argumento de esa función es la conexión específica que quieres leer. Como en la herramienta R, este argumento es una cadena y necesita estar entre comillas.

 2018-07-30_16-03-02.png

Para leer este flujo de datos como datos de nombre variable, el código sería el siguiente:

 

data = Alteryx.read("#1")

 

2018-11-19_8-31-47.png

 

Si intentas leer datos antes de ejecutar todo el flujo de trabajo, es posible que veas este error de archivo no encontrado.

 

2018-08-08_16-19-00.png

 

La solución es guardar el flujo de trabajo y luego ejecutarlo. La próxima vez que ejecutes el código en la celda con el botón "Run", el error debería resolverse.

 

Todo lo que lee la herramienta Python se leerá como una estructura de datos pandas. Esto permite mayor flexibilidad para procesar los datos en Python. Puedes cambiar el formato de los datos después de leerlos, pero deberás regresar todas las salidas devuelta a una estructura de datos pandas.

 

Ahora que ingresé mis datos, me gustaría analizarlos. Primero, voy a crear una celda nueva al hacer clic en el icono de adición al lado del botón para guardar/crear un punto de control. También podría usar el atajo de teclado B para agregar una celda debajo de mi celda actual.

 

2018-11-19_8-32-46.png

 

 

Otras funciones útiles de celdas y Notebook se pueden encontrar en esta barra de herramientas, a la derecha del botón para insertar celda debajo. De izquierda a derecha, los botones son guardar, agregar una celda2018-08-07_12-13-14.png,  quitar celda(s),2018-08-07_12-13-57.pngcopiar celda(s)2018-08-07_12-15-11.png,  pegar celda(s) 2018-08-07_12-16-07.png, mover celda(s) para arriba2018-08-07_12-16-36.png, mover celda(s) para abajo2018-08-07_12-17-34.png, ejecutar2018-08-07_13-24-47.png, detener2018-08-07_13-27-59.png, reiniciar el kernel2018-08-07_14-08-08.pngy reiniciar el kernel y volver a ejecutar Notebook2018-08-07_14-09-41.png. Todos estos botones tienen atajos de teclado. Puedes ver una lista completa con los atajos de teclado de Jupyter Notebook en "Help > Keyboard Shortcuts" en el menú superior.

 

Para esta demostración, quiero ejecutar un análisis de clúster del conjunto de datos "Iris". En la celda nueva, cargaré la función KMeans desde el módulo Sci-kit learn Python (incluido en la instalación de la herramienta Python en Alteryx), y escribiré un código simple para crear clústeres e imprimir las etiquetas de clústeres resultantes.

 

2018-08-07_11-27-41.png

 

Ahora,  puedo ver los clústeres con la biblioteca Python matplotlib.pyplot (incluida en la herramienta Python).

 

opt2.png

 

Por último, es posible generar una salida desde la herramienta Python usando la función Alteryx.write(). En este momento, esta función es solo compatible para estructura de datos pandas. Si intentas escribir algo más que una escritura de datos, recibirás el siguiente error.

 

2018-08-07_11-45-24.png

 

Este error se puede resolver al convertir tu salida en una estructura de datos pandas. Si aún no estas familiarizado con las estructuras de datos pandas, échale un vistazo a esta introducción a las estructuras de datos pandas o esta documentación de pandas de 10 minutos. Cuando hayas escrito el código con Alteryx.write() en la herramienta Python, deberás ejecutar todo el flujo de trabajo para ver los resultados en las anclas de salida de la herramienta.

 

2018-08-07_11-56-22.png

 

Ahora todo lo que queda por hacer es ejecutar el flujo de trabajo y los resultados se rellenaran en el ancla 1 de las salidas de la herramienta Python.

 

Con esta vista previa, espero que te sientas cómodo al leer, escribir y procesar datos en la herramienta Python. ¡Tu imaginación es el único límite!

 

Cosas que debes saber y próximas actualizaciones.

 

  • Comenzando con la versión 2018.4, puedes cargar scripts de Python y Jupyter Notebooks creados externamente.
  • Los metadatos no se completaran de forma consistente en las herramientas posteriores para datos saliendo de la herramienta Python.
  • Hay una conversión de tipos implícita de booleano (Bool) a número entero (Int) al leer datos a la herramienta Python. De la misma forma, hay otra conversión de tipos implícita de booleano (Bool) a número entero (Int) cuando se genera la salida de datos de la herramienta.
  • Comenzando con la versión 2018.4, puedes definir los tipos de datos de columnas al escribir una salida.
  • En este momento, solo las estructuras de datos pandas son admitidas para lectura y escritura. No puedes escribir un gráfico ni leer o escribir objetos espaciales.
  • Las constantes de pregunta tampoco se admiten todavía.

Si tienes algún comentario para nosotros sobre esta herramienta, publícalo en la página de ideas para herramientas. Nuestros gerentes de productos siempre están atentos y les gustaría escuchar más sobre ideas para funciones o límites de la herramienta que hayas encontrado.

 

¡A esta altura, ya debes tener conocimiento experto de la herramienta Python! Si ya eres un genio con otras herramientas de Designer, contribuye al Blog de la Comunidad compartiendo tus experiencias y diciéndonos cómo y para qué utilizas nuestras herramientas en tu vida diaria. Si te interesa contribuir al Blog, envía un correo electrónico a flavia.brancato@alteryx.com para acceder a la sección.

Todos los lunes publicamos sobre una herramienta. Con eso en mente, nos encantaría saber cuál es tu favorita o, quizás, qué herramienta te gustaría ver aquí en la Comunidad la próxima semana. No olvides de suscribirte al panel de la Base de Conocimiento para recibir notificaciones de las últimas novedades.

 

*Esta publicación fue escrita originalmente por @SydneyF en la Comunidad en inglés