Herramienta Python

La herramienta Python es un editor de código para usuarios de Python. Se recomienda tener experiencia en Python antes de utilizar esta herramienta.

Ejecuta Alteryx.help para obtener información acerca de funciones prácticas. Para hacerlo, ejecuta la función después de importar el módulo:
from ayx import Alteryx
Alteryx.help()
.

Soporte de Python

Designer acepta código Python personalizado. Alteryx no brinda soporte a código personalizado de Python.

Alteryx compatibilidad con galerías públicas

¿Planea publicar su flujo de trabajo en Gallery.alteryx.com? Primero debe solicitar una exención. Esta restricción no se aplica a las instancias privadas de Alteryx Server y Alteryx Gallery.

Primeros pasos

La interfaz de la ventana de configuración de la herramienta Python se parece a Jupyter Notebook. Si no conoces Jupyter Notebooks, dirígete a Ayuda > Recorrido por la interfaz de usuario o Ayuda > Ayuda de Notebook. Para obtener ayuda con el código, consulta las referencias adicionales que están disponibles en la opción Ayuda de la herramienta.

Debido a que la herramienta replica la interfaz de Jupyter Notebook pero tiene las restricciones de Designer, algunas opciones se comportan de manera diferente del comportamiento esperado de un Jupyter Notebook estándar.

Si lo necesitas, instala paquetes de ciencia de datos adicionales

La herramienta Python incluye los siguientes paquetes de ciencia de datos más comunes:

  • ayx: API de Alteryx
  • geopandas: extiende los tipos de datos utilizados por los pandas para permitir operaciones espaciales en tipos geométricos.
  • jupyter: metapaquete de Jupyter
  • matplotlib: paquete de trazado de Python
  • numpy: NumPy, procesamiento de conjuntos de números, cadenas, registros y objetos.
  • pandas: versátiles estructuras de datos para análisis de datos, series de tiempo y estadísticas.
  • requests: HTTP de Python para humanos.
  • scikit-learn: un conjunto de módulos de Python para machine learning y minería de datos
  • scipy: SciPy, biblioteca científica de Python
  • six: utilidades de compatibilidad de Python 2 y 3.
  • SQLAlchemy: biblioteca de abstracción de base de datos.
  • statsmodels: cómputos y modelos estadísticos de Python.

Instalación de paquetes adicionales

Dependiendo de qué tipo de instalación de Designer estés usando, puedes instalar paquetes adicionales usando Alteryx.installPackages. El ejemplo a continuación instala keras.

from ayx import Package
Package.installPackages("keras")
  • Si estás ejecutando Alteryx sin permisos de administrador, puedes instalar paquetes de Python adicionales sin ningún permiso especial.
  • Si estás ejecutando Alteryx con permisos de administrador, primero debes ejecutar Alteryx como administrador para instalar paquetes de Python adicionales. Si no puedes ejecutar Alteryx como administrador, no podrás instalar paquetes de Python adicionales.

Conectar entradas

La herramienta Python acepta múltiples entradas. Una vez que las entradas estén conectadas, debes ejecutar el flujo de trabajo para copiar en caché los flujos de datos entrantes.

Para acceder a una conexión entrante de datos:

  1. Importa la biblioteca de Alteryx: from ayx import Alteryx
  2. Accede a la conexión y brinda una variable para utilizar una referencia de datos:
    • Utiliza el nombre de la conexión: Alteryx.read("<nombre de la conexión>")
    • from ayx import Alteryx
      data1 = Alteryx.read("#1")
    • Lee todas las conexiones y haz referencia a la matriz de índice 0 devuelta: Alteryx.read(Alteryx.getIncomingConnectionNames()[<index number="">])</index>
    • from ayx import Alteryx
      data2 = Alteryx.read(Alteryx.getIncomingConnectionNames()[1])
  3. Ejecuta tu flujo de trabajo antes de trabajar con la herramienta Python. Al ejecutar tu flujo de trabajo, se copian en caché tus datos y la herramienta Python los puede acceder. Luego, tus datos son tratados como una estructura de datos pandas. Puedes encontrar más información sobre estructuras de datos pandas en pandas.pydata.org.

Configurar la herramienta

Ejecuta tu flujo de trabajo antes de trabajar con la herramienta Python.

Definir el modo de ejecución del flujo de trabajo

Iniciea el desarrollo con el modo interactivo. De esa manera, se mostrarán todos los errores, advertencias e instrucciones de impresión en Jupyter Notebook. Utiliza el modo Producción para mejorar la velocidad cuando hayas finalizado el desarrollo y quieras ejecutar tu código a través de un intérprete estándar de Python.

Una vez que hayas terminado de desarrollar el código, cambia al modo de Producción. Esto ejecutará el código de forma más eficaz cuando se ejecute el flujo de trabajo.

¿Necesitas imprimir conjuntos de caracteres multibyte (MBCS)? Consulta Solución de problemas para conocer los pasos para imprimir conjuntos de caracteres multibyte (MBCS) en el modo de producción.


Definir el formato de almacenamiento de datos

El formato de almacenamiento back-end recomendado y predeterminado es YXDB. Como alternativa, puedes seleccionar SQLite.

  SQLite YXDB
Blob No admitido Apoyado
Objetos espaciales No admitido

Admite el paso de objetos espaciales entre la herramienta Python y otras herramientas.

Es útil utilizar las etiquetas de metadatos al crear salidas de objetos espaciales desde la herramienta Python.

Las columnas de objetos espaciales se cargan en los pandas DataFrame como cadenas que contienen geojson. Para enviar una columna espacial (representada como cadenas geojson) de nuevo fuera de la herramienta Python, se debe incluir el tercer parámetro opcional de 'Alteryx.write()' especificando el tipo como SpatialObj. (por ejemplo, 'Alteryx.write(df, 1, ?"mi_campo_espacial": "tipo": "SpatialObj" )

Además, se incluyen varios paquetes como 'geopandas' y sus dependencias, que se pueden importar a la herramienta Python para hacer un uso adicional de los datos espaciales.

Limitación de columnas El límite es 2000 Sin limitación
Nota sobre valores nulos Las columnas numéricas/byte que contienen valores nulos se convertirán en un tipo de datos float64, punto flotante de precisión doble. YXDB admite valores nulos en float64 mediante numpy.NaN y en tipos enteros mediante enteros pandas que aceptan valores nulos.

Si no vas a cambiar la disposición de las filas ni a usar GeoSpatial Python, Alteryx te recomienda que segmentes los datos GeoSpatial del conjunto de datos y los vuelvas a unir luego de la herramienta Python. La razón es que la conversión hacia y desde texto Alteryx Binary a texto GeoSpatial no es rápida.

Importar un archivo o directorio

Dependiendo de cuánto control quieras sobre las rutas relativas, puedes usar la función de importar de Alteryx del menú de Alteryx o usar el comando de importar. Puedes importar un script existente de Python o Jupyter Notebook usando la función importar de Alteryx. Si deseas administrar rutas relativas, usa el comando importar en la célula. Algunos ejemplos de importar incluyen el uso del comando importar para importar un directorio o el uso de la función importar de Alteryx para importar un solo script.

Para importar un script de Python o Jupyter Notebook

  1. Haz clic en el menú de Alteryx y, luego, selecciona Importar script.
  2. Haz clic en Elegir archivo y luego navega a un archivo .py o .ipynb.
  3. Haz clic en Importar.

Alteryx importa el archivo.

Utilizar el menú Kernel

  • Detener el proceso: haz clic en el menú Kernel y luego selecciona Interrumpir para detener el proceso.
  • Volver a comenzar el proceso: haz clic en el menú Kernel y luego selecciona la opción Reiniciar para volver a comenzar el proceso del entorno interactivo.
  • Reiniciar el proceso: haz clic en el menú Kernel y luego selecciona Volver a conectar para borrar los resultados intermedios del workbook.
  • Cambiar el kernel no proporciona funcionalidad.
  • No recomendamos que selecciones Apagar.

Generar datos de la herramienta

Usa Alteryx.write para generar datos en la salida de la herramienta.

  • Para enviar datos de otras herramientas al lienzo, utiliza Alteryx.write(<estructuras de datos pandas>, <número de ancla de salida>).
    Alteryx.write(df,1)
  • Alteryx.write solo acepta estructuras de datos pandas. Si tienes datos en otro formato, utiliza la biblioteca pandas para convertirlos en una estructura de datos pandas. La biblioteca pandas está preinstalada en Designer y se puede acceder en Jupyter Notebook usando import pandas.
  • Puedes enviar hasta cinco estructuras de datos a los anclajes de salida.

Mejores prácticas

Las siguientes mejores prácticas te ayudarán a trabajar con éxito con la herramienta Python.

Resolución de problemas