Skip to main content

Python tool Outil Python

Exemple d'outil unique

Il existe un exemple d'outil unique pour l'outil Python. Consultez la page Exemples de workflows pour savoir comment accéder à cet exemple et à de nombreux autres exemples directement dans Alteryx Designer.

L'outil Python est un éditeur de code destiné aux utilisateurs de Python. Vous devez maîtriser le langage Python avant d’utiliser cet outil.

Après avoir importé le package Alteryx Python, exécutez Alteryx.help pour plus d'informations sur les fonctions utiles :

  • from ayx import Alteryx

  • Alteryx.help()

Important

Bien que Designer accepte le code client Python, Alteryx n'offre pas la prise en charge du code client Python.

Pour commencer

La fenêtre de configuration de l'outil Python ressemble à un bloc-notes Jupyter. Si vous n'êtes pas familiarisé avec les bloc-notes Jupyter, consultez la section Aide > Visite de l'interface utilisateur ou Aide > Aide du Bloc-notes. Pour obtenir une assistance avec le code, voir les références supplémentaires disponibles dans Aide.

Note

Bien que l'outil reproduise l'interface de Jupyter Notebook, certaines options peuvent se comporter différemment de ce que vous attendez.

Installer les packages Data Science dont vous avez besoin

L'outil Python comprend les packages de données science :

  • ayx : API Alteryx

  • jupyter : metapackage Jupyter

  • matplotlib : package de traçage Python

  • numpy : NumPy, traitement de matrice pour les nombres, les chaînes, les enregistrements et les objets.

  • pandas : structures de données puissantes pour l'analyse de données, les séries temporelles et les statistiques.

  • demandes : HTTP pour les humains

  • scikit-learn : ensemble de modules Python pour le machine learning et l'exploration de données.

  • scipy : SciPy, Bibliothèque Scientifique pour Python

  • six : utilitaires compatibles avec Python 2 et 3.

  • SQLAlchemy : Bibliothèque d'abstraction de base de données

  • modèles de statistiques : calculs et modèles statistiques pour Python.

Installation de packages supplémentaires

Selon la version de Designer que vous utilisez, vous pouvez installer des paquets supplémentaires avec la fonction Alteryx.installPackages. Par exemple, pour installer keras :

   from ayx import Package

Package.installPackages("keras")

Vous ne pouvez installer des paquets Python supplémentaires que si vous exécutez Designer en tant qu'administrateur. Les utilisateurs non administrateurs ne peuvent pas installer les package Python supplémentaires.

Connexion des entrées

L'outil Python accepte plusieurs entrées. Une fois que vous avez connecté les entrées, vous devez exécuter le workflow pour mettre en cache les flux de données entrants. Suivez ces étapes pour accéder à une connexion de données entrante :

1. Importez la bibliothèque Alteryx :

   from ayx import Alteryx

2. Accédez à la connexion et fournissez une variable à utiliser comme référence de données :

   # Use the method this method to read data from the reference. Replace "CONNECTION_NAME" with the name of your connection.

data1 = Alteryx.read("CONNECTION_NAME")

# Read in all connections and reference the returned zero-index array. Replace "INDEX_NUMBER" with the appropriate index number from the array.

Alteryx.read(Alteryx.getIncomingConnectionNames()[INDEX_NUMBER])

3. Exécutez votre workflow avant de commencer à travailler avec l'outil Python. Cela met vos données en cache et les rend accessibles à l'outil.

Note

L'outil Python traite vos données comme une trame de données Pandas. Pour plus d'informations, visitez pandas.pydata.org.

Configuration de l'outil

Définir le mode d'exécution du workflow

Vous avez la possibilité d'utiliser deux modes pour travailler avec l'outil Python :

  • Utilisez le mode Interactif pour commencer le développement.

  • Utilisez le mode Production pour améliorer la vitesse lorsque vous avez terminé le développement et que vous souhaitez exécuter votre code via un interpréteur Python standard.

Mode interactif

Sélectionnez le bouton Interactif. Utilisez ce mode pour le développement. Ce mode vous permet d'interagir avec les données entrantes via un Bloc-notes Jupyter sans avoir besoin de réexécuter le workflow pour voir les résultats de votre code.

Lorsque vous exécutez votre workflow, Designer exécute ces tâches :

  • Designer met en cache une copie des données entrantes et la met à disposition de l'outil Python.

  • L'interpréteur de commandes Jupyter exécute le code dans le bloc-notes.

  • Si votre code appelle la méthode Alteryx.write(), l'interpréteur de commandes Jupyter envoie des résultats via les ancrages de sortie.

  • Jupyter Notebook affiche les erreurs, avertissements et déclarations d'impression, comme quand vous sélectionnez Exécuter tout.

Mode production

Sélectionnez le bouton Production. Utilisez ce mode pour les modèles en production. Dans ce mode, Designer regroupe toutes les cellules Python de Jupyter Notebook dans un script unique en lecture seule. Designer transmet ce script à votre interprète Python.

Lorsque vous exécutez le workflow, Designer exécute ces tâches :

  • Il contourne l'interpréteur de commandes Jupyter, puis exécute le script en lecture seule via un interprète Python standard.

  • Il n'affiche pas les erreurs, les avertissements et les déclarations d'impression.

Pour modifier le script en mode production, sélectionnez le mode Interactif, puis modifiez les cellules dans Jupyter Notebook. Une fois vos modifications terminées, sélectionnez le mode Production.

Définir le format de stockage des données

L'outil Python dispose de deux options de format : SQLite et YXDB.

SQLite
  1. Sélectionnez le menu Alteryx dans la fenêtre de configuration de l'outil Python.

  2. Sélectionnez Remplacement de Sqlite.

Thumbnail
YXDB

Suivez ces étapes pour utiliser le format de stockage de données YXDB.

  1. Sélectionnez le menu Alteryx dans la fenêtre de configuration de l'outil Python.

  2. Désélectionnez Remplacement de Sqlite pour supprimer la coche.

SQLite

YXDB

Blob

Non pris en charge

Pris en charge

Objets géographiques

Non pris en charge

Transmettre les objets géographiques entre l'outil Python et d'autres outils. Utilisez des balises de métadonnées lorsque vous créez des sorties d'objets géographiques à partir de l'outil Python.

Limitation de colonne

La limite est de 2000

Pas de limite

Note relative aux valeurs nulles

Non pris en charge

Designer convertit les colonnes numériques ou octets en type de données float64 (c.-à-d. flottant à double précision).

Si vous ne modifiez pas la disposition des lignes ou si vous utilisez Python GeoSpatial, Alteryx vous recommande de couper les données GeoSpatial du jeu de données et de les rejoindre à nouveau après l'outil Python. Cela est dû au fait que la conversion depuis et vers les données Alteryx Binary et le texte GeoSpatial est lente.

Importer un fichier ou un répertoire

Vous pouvez importer un fichier ou un répertoire de deux façons :

  • Utilisez la fonction d'importation dans le menu Alteryx pour importer des scripts Python individuels ou des bloc-notes Jupyter.

  • Utilisez la commande d'importation pour importer un répertoire.

Suivez ces étapes pour importer un script Python ou un bloc-notes Jupyter avec la fonction d'importation :

  1. Cliquez sur le menu Alteryx.

  2. Sélectionnez Importer le script.

  3. Sélectionnez Choisir un fichier.

  4. Accédez à un fichier .py ou .ipynb et sélectionnez Importer.

Utiliser le menu Kernel

Exécutez l'une de ces commandes à partir du menu Kernel :

  • Pour arrêter le traitement, sélectionnez Interrompre.

  • Pour relancer le traitement, sélectionnez Redémarrer.

  • Pour effacer le classeur des résultats immédiats, sélectionnez Reconnecter.

  • Changer de noyau ne fonctionne pas.

  • Alteryx recommande de ne pas sélectionner Arrêter.

Respecter les meilleures pratiques

Ces meilleures pratiques vous aident à utiliser l'outil Python avec succès :

Utilisez la méthode Alteryx.getWorkflowConstant pour faire référence à une constante du workflow comme Engine.WorkflowDirectory. Dans le cas contraire, le résultat ou la sortie de la commande remplace définitivement la commande dans Jupyter Notebook lorsque vous exécutez votre code.

Avertissement

Évitez d'utiliser des wrappers % dans les constantes du workflow. Utilisez plutôt ceci, par exemple, pour appeler Engine.WorkflowDirectory :

from ayx import Alteryx

Alteryx.getWorkflowConstant("Engine.WorkflowDirectory")

Sortie de données depuis l'outil

Utilisez la méthode Alteryx.write pour extraire les données de l'outil.

Pour envoyer des données à d'autres outils du canevas, utilisez une méthode comme ceci :

   # Replace "PANDAS_DF" with your data, in DataFrame form.
# Replace "OUTPUT_ANCHOR_NUM" with the number of your output anchor.

Alteryx.write(PANDAS_DATAFRAME, OUTPUT_ANCHOR_NUM)

La méthode Alteryx.write accepte uniquement les trame de données pandas. Si vous avez des données dans un autre format, utilisez la bibliothèque Pandas pour les convertir en trame de données. La bibliothèque Pandas est déjà installée dans avec Designer. Accédez-y dans le bloc-notes Jupyter avec importer pandas.

Vous pouvez envoyer jusqu'à cinq trames de données vers les ancrages de sortie.