Base de Connaissance - Français

Apprenez auprès des experts.
Cet article fait partie de la série d'outils de maîtrise, une compilation des contributions de base de connaissances pour introduire des exemples de travail diversifiés pour les instruments de concepteur. Ici, nous allons introduire des ressources App et macro pour maîtriser le concepteur Alteryx:   Fait: les workflows sont les meilleurs. Regarde. Ils sont tout au sujet de faire des choses et, avec des centaines d'outils et la capacité d'intégrer des processus externes, il n'y a pas de pénurie de choses que vous pouvez obtenir fait. Nous savons qu'il ya quelques domaines d'analyse qui nécessitent un peu de puissance de feu supplémentaire, cependant, et c'est pourquoi vous pouvez tirer parti de vos workflows dans les applications et les macros pour une fonctionnalité supplémentaire.     Apps En bref, une application analytique est simplement un workflow qui nécessite une entrée utilisateur. Par exemple, vous pouvez avoir un workflow qui capture vos analyses et génère un rapport. Selon qui dirige le rapport il peut y avoir seulement quelques tables/points de données d'intérêt à cette personne, et vous voulez personnaliser la sortie à cet utilisateur, comme ci-dessous:     Pour capturer cette entrée utilisateur, vous utiliseriez l'outil interface Set et l'entrée (nom de l'utilisateur) mettrait à jour un filtre et un élément d'en-tête/texte dans le workflow pour générer un rapport entièrement différent, personnalisé, sur l'exécution. Vous pouvez apprendre à construire une application analytique ici, en vérifiant l'exemple de cas ci-dessus (ci-joint en tant que v 10.6 exemple de rapport yxwz), ou en marchant à travers les échantillons détaillés dans votre concepteur en naviguant pour aider >> exemples de workflows >> applications analytiques:   En plus de toutes les fonctionnalités que les workflows sous-jacents prêtent à vos applications, vous pouvez créer des erreurs personnalisées et utiliser l'outil de workflow de débogage dans votre concepteur d'interface pour dépanner vos configurations d'application. Notre galerie publique a également une richesse des apps remplis qui pourraient être utiles ou au moins commencer la base solide en construisant votre propre. Connectez-vous, appuyez sur à côté de votre application de choix, et cliquez avec le bouton droit >> modifier le fichier yxwz pour l'ouvrir dans le concepteur plutôt que comme une interface. Si vous êtes à la recherche de partager un de vos apps chef-d'œuvre de la Galerie, nous avons App Building Guidelines qui devrait également aider. Macros Les macros, d'autre part, sont des modules qui ont la flexibilité d'être exécuté comme un outil unique dans un autre module-souvent encapsulant un processus répétable. De la même manière aux apps, vous pouvez construire quelques macros standard (Apprenez comment construire un ici) en supprimant simplement votre entrée et sortie de votre workflow et en les remplaçant par les outils d'entrée de macro et d'interface de sortie de macro, respectivement. Cela vous permettra effectivement "insérer" le traitement de ce Workflow dans un autre par un clic droit sur votre toile de concepteur, en sélectionnant "insérer", et en choisissant votre macro à partir du navigateur de fichiers qui s'ouvre après la sélection de la "macro ..." option de liste. Une fois que vos connexions sont établies, votre macro standard prend simplement votre flux de données d'entrée et l'envoie à travers ce Workflow encapsulé avant de retourner la sortie pour continuer en aval.   Pour ajouter à l'arsenal, vous pouvez également construire des macros de lot et itératives. Les macros de lot (Apprenez à en construire un ici) exécuteront également n'importe quel processus répétable est imbriqué par la macro, mais il réexécutera et RECONFIGURE pour chaque paramètre de contrôle-souvent groupant des «paquets» des enregistrements d'entrée par le paramètre de contrôle à utiliser pour leur traitement respectif. Les macros itératives (Apprenez à en construire une ici, ici ou ici) utiliseront deux sorties de macro (une sortie itérative et une sortie standard avec une condition de terminaison) pour réexécuter le flux de travail enveloppé jusqu'à ce que vos itérations maximales soient atteintes ou toutes vos les dossiers ont réitéré pour satisfaire la condition de terminaison et ont quitté la sortie standard. Toutes les macros peuvent utiliser d'autres outils d'interface pour mapper des champs ou configurer des paramètres, mais elles ne sont pas requises.   Les macros sont extrêmement polyvalentes en raison de leur simple personnalisation, et la meilleure approche pour apprendre comment et quand les utiliser, ainsi que la façon de les construire pour mieux répondre à vos besoins, est d'absorber tous les exemples que vous pouvez. Heureusement, il ya une poignée de macro builds détaillées disponibles dans votre aide de concepteur >> exemples de workflows >> macro échantillons:     Si vous êtes déjà un Pro macro et seulement besoin de conseils et astuces sur la façon de faire des macros plus dynamiques, comme la façon de déployer des appels API dans vos macros, ne cherchez pas plus loin que la série CS macro dev. Tout comme avec les apps, il y a une abondance de macros maniables disponibles sur notre galerie publique dans le secteur de macro ou dans nos sorties de paquet de macro d'équipage. Ceux-ci incluent des macros qui peuvent: Saisie de plusieurs fichiers à la fois, indépendamment du schéma (forme de table) Automatiser ou simplifier l'analyse des dates Mettez vos données en cache pour effectuer le traitement des «points de contrôle» dans vos workflows Traduisez vos records Utilisez Google Maps pour géocoder Il suffit de télécharger et d'installer des macros pour commencer à les utiliser pour apporter instantanément cette puissance de feu supplémentaire dans vos analyses. Après avoir examiné ce qui précède, vous devriez également avoir une bonne idée sur la façon de les adapter pour mieux adapter vos workflows et comment appliquer des techniques similaires pour construire des fonctionnalités de concepteur de votre propre!   Pour en savoir plus sur les applications et les macros, n'oubliez pas de consulter nos vidéos de formation en direct sur les applications d'introduction, les applications intermédiaires, les macros avancées et les applications de chaînage. Gardez également un œil sur la façon de mieux utiliser les outils d'interface dans la série Tool mastery!   Maintenant, vous devriez avoir des compétences de niveau expert avec des applications et des macros! Si vous pouvez penser aux ressources que nous avons laissées dehors, sentez-vous libre pour employer la section de commentaires ci-dessous! Considérez-vous comme un maître d'outils déjà? Faites-nous savoir à Community@alteryx.com si vous souhaitez que votre outil créatif utilise pour être présenté dans la série de maîtrise d'outils.   Restez à l'écoute avec nos derniers messages chaque outil mardi en suivant Alteryx sur Twitter! Si vous souhaitez maîtriser tous les outils de concepteur, envisagez de vous abonner aux notifications par courrier électronique. Fait: les workflows sont les meilleurs. Regarde. Ils sont tout au sujet de faire des choses et, avec des centaines d'outils et la capacité d'intégrer des processus externes, il n'y a pas de pénurie de choses que vous pouvez obtenir fait. Nous savons qu'il ya quelques domaines d'analyse qui nécessitent un peu de puissance de feu supplémentaire, cependant, et c'est pourquoi vous pouvez tirer parti de vos workflows dans les applications et les macros pour une fonctionnalité supplémentaire.
Afficher l'article complet
Vous venez de terminer de faire un workflow, maintenant comment vous le Partagez afin que vos collègues peuvent également l'utiliser, mais avec leurs propres intrants? Faites une application analytique! Pour démarrer le processus, faites simplement glisser un outil d'interface sur le canevas.   Dans cet exemple, nous prendrons un workflow qui convertit un type de fichier en un autre. Pour modifier le workflow d'un workflow standard vers une application analytique, faites glisser un outil de navigation de fichier sur le canevas. C'est ainsi que les utilisateurs vont spécifier le fichier qu'ils aimeraient saisir:   Vous remarquerez qu'une fois qu'un outil d'interface est placé sur la toile, les petites ancres de boulon de foudre apparaissent au-dessus des outils. Cela vous permet de connecter un outil d'action à l'outil approprié dans le workflow; Seuls les outils d'interface peuvent se connecter à ces ancres. La connexion de l'ancre Q (question) à l'ancre du boulon de foudre (voir ci-dessus) ajoute automatiquement l'outil d'action nécessaire à la toile. L'outil d'interface et les outils d'action devront être configurés afin de dire au workflow ce qui doit être mis à jour. Voici une procédure pas à pas de ce que chaque outil fait pour notre exemple:         Pour plus de détails sur chacun des outils d'interface, veuillez vous référer à la documentation d'aide.   Configuration du concepteur d'interface: Maintenant que nous avons configuré tous nos outils d'interface et d'action, nous avons besoin de configurer ce que l'application ressemble à un utilisateur. Ouvrez le concepteur d'interface en naviguant pour afficher-> interface Designer (ou Ctrl + Alt + D).         Le concepteur d'interface contient 4 vues (celles-ci correspondent aux 4 petites icônes à gauche de la fenêtre): Vue de mise en page: ici vous pouvez ajouter des tabulations, grouper les entrées ensemble, ajouter du texte et renommer les entrées Vue de test: permet le test et le mode debug Arborescence: vue hiérarchique des outils et actions de l'interface Propriétés: permet la configuration des sorties, des vues et la possibilité de «chaîner» les applications ensemble Pour plus de détails sur le concepteur d'interface et les différentes vues, consultez la documentation d'aide.   Configuration des paramètres de workflow: Comme nous l'avons vu ci-dessus, l'ajout d'un outil d'interface à la toile change automatiquement le «type» de workflow d'un workflow standard à une application analytique. Si pour une raison quelconque vous avez besoin de faire manuellement cela, vous devrez entrer dans les paramètres de configuration de Workflow.   Pour arriver ici, cliquez sur n'importe quel espace vide sur la toile. Dans la fenêtre de configuration, sélectionnez Workflow-> type.       Publication dans la Galerie: Du concepteur, vous pouvez publier dans la galerie publique ou une galerie privée en allant dans le fichier-> enregistrer sous-> et en sélectionnant la Galerie de votre choix. Lorsqu'elles sont publiées dans la Galerie, les utilisateurs ne voient que l'interface de l'application de l'outil et non le Workflow sous-jacent.   Pour une procédure pas à pas détaillée, voir la partie 3 de la Alteryx Gallery Series: app Publishing %26; version Control 101   * Il n'est pas nécessaire que vous publiiez une application analytique à la Galerie. Il s'agit de workflows qui peuvent être partagés comme un workflow standard. Les utilisateurs peuvent utiliser l'interface App en sélectionnant l'icône baguette magique à côté de l'icône exécuter dans la barre d'outils.   Conseils Pro: Les applications analytiques sont enregistrées en tant que type de fichier yxwz Lorsque vous double-cliquez pour ouvrir une application analytique, l'interface de l'application s'ouvre automatiquement Vous pouvez crypter des applications analytiques afin que le Workflow sous-jacent ne soit pas visible pour les utilisateurs.
Afficher l'article complet
Jointure vs Union Question Comment savoir si je dois utiliser l'outil Jointure ou Union? Réponse C'est une question assez commune. Vous avez deux ensembles de données et vous devez les combiner en un ensemble de données plus grand, mais comment allez-vous faire? Alteryx a deux outils qui rendent cela très facile en fonction de ce que vous essayez d'accomplir; l'outil Jointure et l'outil Union. Alors, quelle est la différence? L'outil Jointure rendra votre fichier plus large, ce qui signifie qu'il ajoute des champs à vos données, ou combine vos entrées horizontalement. Utilisez cet outil si vous cherchez à ajouter des informations pour les enregistrements existants. Par exemple, peut-être que vous avez une liste de clients avec l'ID de magasin auprès duquel ils achètent, puis une liste séparée des emplacements de magasin. Si vous souhaitez ajouter les informations de magasin aux informations du client, vous devez effectuer une jointure en fonction du champ ID magasin. Ceci fera correspondre enregistrements par enregistrements les Magasins avec leurs Clients afin que votre fichier Client contienne les informations du Magasin. Notez que cela peut entraîner des enregistrements en double en fonction de la façon dont vos jeux de données sont configurés donc soyez prêt à vérifier vos données. L'outil Union rend votre fichier plus long, ce qui signifie qu'il ajoute des enregistrements à vos données, ou combine vos entrées verticalement. Vous voudriez utiliser cet outil si vous cherchez à empiler deux fichiers l'un sur l'autre. Par exemple, peut-être que vous avez une liste de clients de chaque région de votre organisation de vente et que vous souhaitez qu'un fichier maître de client unique. Tous les fichiers de votre région ont exactement les mêmes champs. L'outil Union alignera vos ensembles de données en fonction des noms de champs (soit automatiquement, soit vous pouvez le faire manuellement s'il y a de légères variations) et vous vous retrouverez avec un fichier maître avec tous les mêmes champs. Jetez un oeil à l'exemple ci-joint construit en v 11.3 qui démontre la différence! 11.3
Afficher l'article complet
Maîtrise de l'outil | Formule à plusieurs lignes Cet article fait partie de la série d'outils de maîtrise, une compilation des contributions de base de connaissances pour introduire des exemples de travail diversifiés pour les instruments de concepteur. Ici, nous allons plonger dans les utilisations de l'outil de formule à plusieurs lignes sur notre façon de maîtriser le concepteur Alteryx: L'outil de formule à plusieurs lignes fonctionne comme l'outil de formule normal, mais ajoute la possibilité de référencer plusieurs lignes de données dans une expression. Disons, par exemple, quelqu'un était au rez-de-chaussée d'une maison et avait un outil de formule. Ils ne seraient en mesure de parler aux gens aussi au rez-de-chaussée. Si ils avaient un outil de formule à plusieurs lignes, cependant, ils seraient également en mesure de parler aux gens à l'étage, dans le grenier, et dans le sous-sol ainsi. L'outil de formule à plusieurs lignes permet à l'utilisateur de mettre à jour un champ existant ou de créer un autre. Les deux options peuvent être très utiles, et il ya de nombreux cas d'utilisation pour chacun. Les cas d'utilisation que nous détaillons ci-dessous sont joints dans le yxmd de workflow v 11.0. Mettre à jour le champ existant "remplissage vers le bas" un champ: Souvent, les données peuvent être arrangées d'une manière qui semblerait bonne dans Excel mais n'est pas réaliste pour travailler avec dans Alteryx. Dans ces instances, vous pouvez souhaiter «remplir» une colonne qui a des valeurs manquantes. Dans ce cas, seule la première personne dans chaque famille a son nom de famille peuplé. Par conséquent, nous aimerions modifier le champ famille où il est actuellement null (). Cela peut facilement être accompli comme ceci: Pour obtenir facilement des variables et des fonctions dans la zone d'expression, il suffit de double-cliquer dessus à partir de leur onglet correspondant dans la configuration. Créer un nouveau champ: Créer un ID unique pour chaque personne du groupe: Maintenant que les données sont nettoyées, nous voulons ajouter un ID unique à chaque personne en fonction de la famille à laquelle elles appartiennent. Afin d'y parvenir, nous allons configurer l'outil de formule multiligne comme suit: Lors de la création d'un nouveau champ, l'utilisateur a la possibilité de sélectionner le type de champ à lui donner. Ici, int 16 a été choisi. Notez que nous regroupons par famille parce que nous voulons que l'ID soit unique au sein de chaque famille, mais il peut recommencer avec différentes familles. Ce nouveau champ ID peut être utilisé ultérieurement en tant qu'identificateur avec des outils tels que Filter, Resume et plus encore. Effectuer des calculs: Qu'est-ce qu'un bon outil multiligne sans la possibilité de référencer plus que juste les lignes directement avant ou directement après? En modifiant la valeur des lignes num dans la configuration, vous pouvez augmenter le nombre de lignes que vous pourrez utiliser dans vos expressions. Dans cet exemple, nous avons augmenté les lignes num sur 2. Remarquez comment il ya maintenant plus de variables à sélectionner dans la section du milieu sur la configuration. Parce que nous voulons le total de fonctionnement par famille, nous regroupons à nouveau par ce champ. Cette méthode peut être étendue pour générer des totaux en cours d'exécution dans de nombreux scénarios différents, y compris les ventes monétaires, les comptes d'articles et plus encore. Maintenant, nous voulons calculer la quantité moyenne de temps d'écran total par famille. Dans cette boîte d'expression de l'outil de formule multiligne, nous écrivons: iif([ID]=3,average([Row-2:Total Screen Time],[Row-1:Total Screen Time],[Total Screen Time]),iif([ID]=2,average([Row-1:Total Screen Time],[Total Screen Time],[Row+1:Total Screen Time]),average([Row+2:Total Screen Time],[Row+1:Total Screen Time],[Total Screen Time]))) Cette méthode vérifie la valeur d'ID de chaque ligne et personnalise la formule pour générer une moyenne en utilisant les lignes correctes. Différence par rapport au précédent: La dernière partie de la configuration de cet outil qui n'a pas encore été modifiée est les valeurs des lignes qui n'existent pas déroulantes. Cela indique à Alteryx ce qu'il faut utiliser lorsqu'une formule doit utiliser la valeur d'une ligne qui n'existe pas (d'où le nom de la liste déroulante). Cela se produirait, par exemple, lors du calcul d'une valeur pour la première ligne de données lorsque l'expression contient une variable Row-1. L'utilisateur peut choisir ce que la valeur de ligne inexistante est. Dans cet exemple, la ligne qui n'existe pas est définie sur la ligne valide la plus proche. De cette façon, lorsque la formule tente d'utiliser [Row-1: temps total de l'écran] sur la ligne 1 et voit qu'elle n'existe pas, elle utilise à la place la valeur de la ligne 1. Cela se traduit par la différence de 0 que vous voyez dans la sortie. Un tri a été placé avant cet outil de formule à plusieurs lignes pour trier le temps total de l'écran dans l'ordre décroissant. La formule ci-dessus a créé un champ qui est la différence entre la durée totale de l'écran de la ligne actuelle et la durée totale de l'écran de la ligne précédente. Cela rend facile de voir combien plus de temps d'écran chaque personne a besoin afin de rattraper la personne devant eux. Plusieurs fois, l'outil de formule à plusieurs lignes sera utilisé en combinaison avec l'outil Cross Tab. Ceci est particulièrement utile si vous essayez de transformer quelques colonnes de données en une table. Un membre de la communauté Alteryx avait ce problème exact et a été en mesure de le faire résoudre dans ce post. L'outil de formule à plusieurs lignes ne peut mettre à jour qu'un seul champ par instance d'outil. Si vous souhaitez mettre à jour plusieurs champs (et que vous vous sentez à l'aise avec l'outil de formule multiligne et l'outil de formule multichamp), essayez cette macro qui a été affichée dans la Galerie Alteryx publique. Maintenant, vous devriez avoir une compétence de niveau expert avec l'outil de formule à plusieurs lignes! Si vous pouvez penser à un cas d'utilisation, nous avons laissé de côté, n'hésitez pas à utiliser la section commentaires ci-dessous! Considérez-vous comme un maître d'outils déjà? Faites-nous savoir à Community@alteryx.com si vous souhaitez que votre outil créatif utilise pour être présenté dans la série de maîtrise d'outils. Restez à l'écoute avec nos derniers messages chaque #ToolTuesday en suivant @alteryx sur Twitter! Si vous souhaitez maîtriser tous les outils de concepteur, envisagez de vous abonner aux notifications par courrier électronique. L'outil de formule à plusieurs lignes fonctionne comme l'outil de formule normal, mais ajoute la possibilité de référencer plusieurs lignes de données dans une expression. Disons, par exemple, quelqu'un était au rez-de-chaussée d'une maison et avait un outil de formule. Ils ne seraient en mesure de parler aux gens aussi au rez-de-chaussée. Si ils avaient un outil de formule à plusieurs lignes, cependant, ils seraient également en mesure de parler aux gens à l'étage, dans le grenier, et dans le sous-sol ainsi. 11,0
Afficher l'article complet
Lire dans plusieurs fichiers Excel, avec plusieurs onglets qui ont des schémas différents Une des meilleures choses au sujet de Alteryx est la capacité de lire dans plusieurs dossiers très facilement et de les combiner automatiquement en un seul DataSet. Cela devient un peu plus délicat lorsque vous traitez avec des fichiers qui ont des schémas différents ou des fichiers Excel avec plusieurs onglets. L'ajout de plusieurs fichiers Excel avec plusieurs onglets et la modification du schéma dans chaque onglet le prend à un autre niveau. Si vos onglets ont le même schéma, l'article que vous voulez lire est ici. La façon d'accomplir la tâche si les onglets ont (ou peuvent avoir) des schémas différents (changement de noms de champs en fonction de la feuille) est d'utiliser des macros de lot imbriquées. J'ai joint un exemple de workflow construit dans 11,0 qui démontre le processus. Dans le workflow principal illustré ci-dessus, l'entrée de l'outil de répertoire tire dans les chemins de fichiers de tous les fichiers .xlsx dans le répertoire que vous pointez vers (Notez que vous devrez peut-être rediriger cet outil dans l'exemple vers un répertoire de votre ordinateur). La plupart de la magie se produit dans la macro photo ci-dessus. Cette macro prend le champ, et met à jour l'outil de données d'entrée principal pour lire le premier fichier dans la liste à partir de l'entrée d'annuaire. Il est configuré pour lire la liste des noms de feuilles dans ce premier fichier, mais également pour afficher le chemin d'accès complet à partir de l'outil de données d'entrée. Un nouveau champ est formaté dans la formule pour un chemin d'accès complet acceptable pour un fichier Excel, y compris le nom de la feuille souhaitée. Ce chemin de fichier final est passé dans la 2ème macro comme paramètre de contrôle. La deuxième macro est très simple. Il prend le chemin de fichier reçu à partir de la première macro, met à jour l'outil de données d'entrée, lit dans ce fichier et le transmet ensuite à la première macro. Il répète ce processus une fois pour chaque feuille dans chacun des fichiers en cours de passage à partir de l'outil d'entrée de répertoire. Chaque macro batch contient les données jusqu'à ce que chaque lot soit terminé et le combine en un ensemble de données volumineux. Note: l'échantillon a été créé en 11,0-il ne sera pas ouvert dans les versions antérieures. Une des meilleures choses au sujet de Alteryx est la capacité de lire dans plusieurs dossiers très facilement et de les combiner automatiquement en un seul DataSet. Cela devient un peu plus délicat lorsque vous traitez avec des fichiers qui ont des schémas différents ou des fichiers Excel avec plusieurs onglets. L'ajout de plusieurs fichiers Excel avec plusieurs onglets et la modification du schéma dans chaque onglet le prend à un autre niveau. 11,0
Afficher l'article complet
Dépendances de workflow En tant qu'analystes Alteryx, nous sommes en train de fouetter la perspicacité à des vitesses fulgurantes. Workflow après workflow, outil après outil, nous sommes brillants compréhension fonctionnelle à partir de bandes inertes de données qui nous habilitent à prendre de meilleures décisions. La bonne perspicacité est seulement aussi bonne qu'elle est partageable, cependant, et pour permettre le meilleur partage n'importe quel analyste de Alteryx peut tirer profit de leurs dépendances de workflow pour simplifier des dépendances de chemin d'entrée ou de sortie dans des workflows partagés. Accédez à votre menu dépendances de workflow via Options > Options avancées > dépendances de workflow Dépendances de workflow: dépendances de workflow «groupe par dépendance»: «afficher les outils individuels» Dans les options > options avancées > les dépendances de workflow, le menu affiche toutes les références de chemin d'accès dans votre workflow, par dépendance ou par outil individuel, et vous permet de les modifier universellement en un seul clic à l'une des trois normes couramment utilisées: Tous les relatifs: modifie toutes les dépendances de fichier en un chemin d'accès relatif à l'emplacement du Workflow Tout absolu: change toutes les dépendances de fichier en un chemin absolu vers l'emplacement du fichier All UNC: modifie toutes les dépendances de fichiers à une convention d'affectation de noms uniforme; tous les lecteurs mappés sont renommés dans une ressource réseau Notez comment dans chaque configuration, seules quelques-unes des références de chemin d'accès sont en mesure de mettre à jour à chaque norme respective, par exemple comment l'option "All UNC" laisse les chemins inchangés parce qu'il n'y a qu'une seule référence de fichier réseau et il est déjà au format UNC. De même, le fichier de sortie avec la référence% Temp% à une variable d'environnement (contrôle configuration/Système et propriétés Security/System/System > les variables d'environnement avancées > ...) reste inchangée dans toutes les configurations car il s'agit d'un système global variable qui est par défaut à la plupart des machines. Les outils auxquels les dépendances de workflow s'appliquent La gestion de vos dépendances de workflow est une pratique optimale pour le partage en raison de la fréquence que les références de chemin d'accès deviennent rompues lors de l'envoi de workflows entre les analystes, le partage sur la galerie ou la planification des workflows. La raison en est que la plupart des références de chemin d'accès sont effectuées spécifiques au système sur lequel un workflow a été créé, avant que le workflow ne soit déplacé vers un autre emplacement. Comprendre l'accessibilité de ces fichiers d'entrée/sortie avec l'emplacement final du workflow et s'assurer que les références à ces fichiers ne se rompent pas après le partage (c'est-à-dire si je suis le chemin de référence puis-je toujours trouver le fichier de l'environnement Ce workflow "vit" sur?) est une considération importante dans le développement de Workflow. En consultant le menu dépendances de workflow et en utilisant la gestion des actifs, cependant, vous aurez sur votre chemin à la mise en place de grands réseaux de perspicacité partagée qui aura votre organisation de travail plus intelligent que jamais! Assurez-vous de vérifier les dépendances de workflow jointes. pdf ou Alteryx aide pour plus d'informations sur les dépendances de workflow et comment les exploiter au mieux dans vos environnements de partage! En tant qu'analystes Alteryx, nous sommes en train de fouetter la perspicacité à des vitesses fulgurantes. Workflow après workflow, outil après outil, nous sommes brillants compréhension fonctionnelle à partir de bandes inertes de données qui nous habilitent à prendre de meilleures décisions. La bonne perspicacité est seulement aussi bonne qu'elle est partageable, cependant, et pour permettre le meilleur partage n'importe quel analyste de Alteryx peut tirer profit de leurs dépendances de workflow pour simplifier des dépendances de chemin d'entrée ou de sortie dans des workflows partagés. Meilleures pratiques
Afficher l'article complet
Maîtrise de l'outil | Fuzzy Matching Cet article fait partie de la série d'outils de maîtrise, une compilation des contributions de base de connaissances pour introduire des exemples de travail diversifiés pour les instruments de concepteur. Ici, nous allons plonger dans les utilisations de l'outil Fuzzy match sur notre façon de maîtriser Alteryx Designer:   Semblable à la recherche floue d'Excel, l'outil Fuzzy match (voir en action ici), il est facile pour un utilisateur d'effectuer des correspondances inexactes dans leurs données. En spécifiant des seuils de similarité, en utilisant des algorithmes de correspondance variables et en spécifiant d'autres options de configuration, vous pouvez personnaliser l'outil pour mieux adapter votre jeu de données. En raison du degré élevé de personnalisation dans l'outil, nous vous recommandons de gagner tu temps avec nos vidéos d'introduction et de formation intermédiaire en direct si des applications plus complexes de l'outil sont prévues.   Dans la vie, il y a peu de choses en noir et blanc. Il ya des zones grises partout et les lignes qui séparent peut être un peu floue. La même chose vaut pour les données-surtout quand elles sont saisies manuellement. C'est pourquoi nous avons l'outil Fuzzy match-si vos données ne sont pas claires comme le jour, vous pouvez toujours obtenir de la valeur de vos dossiers en les assortissant à quelque chose d'un peu plus standardisé. Cela peut être utile lorsque:   Purge (deduping) un ensemble de données singulier d'enregistrements dupliqués (joints dans le workflow flou yxmd):     Fusion de deux DataSets et identification d'enregistrements redondants (joints dans le yxmd): Remarque: il est fortement recommandé de purger d'abord (déduplication) chacun de vos datasets fusionnants avant de les utiliser en mode fusion afin d'éliminer les correspondances redondantes, ce qui accélère considérablement le processus de correspondance.     Exécution de comparaisons de chaînes, nettoyage et correspondances de mots clés   Ces techniques vous aideront à identifier des noms, adresses, numéros de téléphone, et même des mots mal orthographiés dans vos données qui vous aideront à faire des chaînes inexactes dans des analyses exactes!   Si vous travaillez spécifiquement avec des noms, n'oubliez pas de consulter notre guide pour Pseudo Fuzzy Matching. Si vous vous trouvez avoir à diminuer le seuil de match au point où certaines chaînes sont incorrectement matchées, mais des correspondances sont manquantes, essayez de "cascader" le processus correspondant avec un autre outil de correspondance floue juste pour les chaînes de seuil inférieures que vous cherchez puis ajoutez les et reconstituez la table globale.   Maintenant, vous devriez avoir des compétences de niveau expert avec l'outil Fuzzy match! Si vous pouvez penser à un cas d'utilisation, nous avons laissé de côté, n'hésitez pas à utiliser la section commentaires ci-dessous! Vous vous considérez comme un maître de la conception des outils? Faites le nous savoir à Community@alteryx.com et si vous souhaitez que votre outil soit utilisé pour être présenté dans la série de maîtrise d'outils.   Restez à l'écoute avec nos derniers messages chaque outil mardi en suivant Alteryx sur Twitter! Si vous souhaitez maîtriser tous les outils de concepteur, envisagez de vous abonner aux notifications par courrier électronique.
Afficher l'article complet
Maîtrise de l'outil | Regex Cet article fait partie de la série d'outils de maîtrise, une compilation des contributions de base de connaissances pour introduire des exemples de travail diversifiés pour les instruments de concepteur. Ici, nous allons plonger dans les utilisations de l'outil Regex sur notre façon de maîtriser le concepteur Alteryx: L'outil Regex est un peu comme le couteau suisse de l'armée d'analyse dans Alteryx; Il ya un tas de façons que vous pouvez l'utiliser pour faire les choses plus rapidement ou plus efficacement, mais même si vous utilisez simplement la lame, il est encore immensément utile. Parfois, c'est tout ce dont vous avez besoin, mais si vous prenez le temps de comprendre comment utiliser quelques autres outils dans ce couteau, vous allez commencer à voir qu'il n'y a pas grand-chose que vous ne pouvez pas faire avec elle. Avant et après l'utilisation de l'outil Regex. Regex: qu'est-ce que c'est bon pour? Regex est une abréviation de l'expression régulière, et vous pouvez essentiellement y penser comme une autre langue. Il utilise des symboles comme n'importe quelle autre langue, mais dans des expressions régulières ces symboles sont utilisés pour assortir des séquences de lettres, de chiffres ou de caractères dans le texte. C'est une langue qui consiste à reconnaître les modèles. Les humains sont vraiment bons à ce genre de chose-disons que je vous ai donné ce bloc de texte: 3345 Michelson Drive, suite 400, Irvine, ca 92612 12303 Airport Way, suite 250, Broomfield, co 80021 Deux North Riverside Plaza, suite 1430, Chicago, il 60606 Vous n'auriez aucun problème à me dire que ce sont des adresses, et quelle partie est un numéro de rue ou un nom de ville. Mais un ordinateur serait juste voir un bloc de texte, et il ne serait pas soin de vérifier si c'était une adresse ou non. Regex est une façon que nous pouvons «reconnaître» les données utiles dans le texte. Let's Translate this à une version Regex: 3345 ^ /d + Le ^ signifie le début d'une ligne dans Regex, donc c'est une bonne pratique pour l'inclure avec votre motif initial. Ici, notre modèle est /d qui signifie «n'importe quel caractère numérique» (0-9). Le + signifie que nous voulons correspondre à l'expression précédente une ou plusieurs fois. Puisque la première partie de l'adresse est un numéro de rue, cela nous permet d'avoir un certain nombre de toute longueur. Michelson Drive [^ /d] + Pour correspondre à la rue, nous devons permettre à notre expression de ramasser plusieurs mots de caractères, y compris un certain nombre d'espaces, puisque les rues seront souvent plus d'un mot. Une façon de faire correspondre ce qui est par ce que nous ne nous attendons pas à l'aide de [^ ...]. Cette notation de regroupement correspond à «n'importe quel caractère non répertorié ici». Ce que nous finissons avec correspond à une ou plusieurs fois un caractère qui n'est pas un nombre. Suite 400 .* La partie suivante de l'adresse est un numéro de suite, qui peut être présent ou non, et qui pourrait potentiellement prendre diverses conventions de dénomination. Afin de définir une expression flexible pour correspondre à tout ce que nous voyons là-bas, nous pouvons utiliser un. pour correspondre à'n'importe quel caractère'. Le * signifie alors que nous pouvons égaler n'importe quel caractère zéro ou plusieurs fois. Irvine [^ /d] + Comme avant, cela signifie simplement «n'importe quel caractère qui n'est pas un nombre». Ca /u{2} Pour correspondre à l'État, nous pouvons faire usage de /Vous pour signifier «toute lettre majuscule». Puisque nous nous attendons à ce que ce soit toujours une séquence de deux lettres, nous pouvons également spécifier la longueur du match en utilisant {...} après notre expression, ou «correspondre à deux lettres majuscules». 92612 /d{5 $ Le code postal sera également venir en tant que 5 chiffres, afin que nous puissions faire quelque chose de semblable à dire «correspondre à cinq caractères de nombre». Ensuite, nous pouvons Tack sur $ pour signifier que nous attendons que ce soit la fin de la ligne actuelle. Outils du commerce Il ya tout à fait quelques symboles utilisés pour construire des expressions Regex, mais Alteryx fournit un joli petit'cheat-sheet'droit dans l'outil pour vous. Vous n'avez pas vraiment besoin de beaucoup plus que cela pour obtenir rouler avec l'utilisation de Regex, et un peu comme dans Alteryx, vous verrez qu'il existe de nombreuses façons différentes, vous pouvez créer une expression pour correspondre à un modèle. Alors ne transpirez pas trop les détails, et n'ayez pas peur de passer du temps avec le bon vieux "Guess-and-test" méthode d'apprentissage. Ne vous inquiétez pas, je suis classiquement entraîné. Pour obtenir des guides plus complets sur Regex, vous pouvez également vous tourner vers le Guide de syntaxe de chaîne de format Boost-Extended, ainsi que le Guide de syntaxe Regex perl. Alteryx a structuré la fonctionnalité Regex en quatre méthodes: match, Parse, replace %26; tokenze. Notre documentation d'aide pour ces méthodes est très bonne ainsi. Match La méthode match vérifie simplement si une chaîne peut être décrite par l'expression régulière donnée et vous donne une valeur true ou false. Nous allons utiliser les éléments d'expression dans le tableau ci-dessus pour correspondre à nos adresses. Vous pouvez créer une expression longue en les mettant ensemble et y compris les espaces /s et les virgules, où qu'ils apparaissent. Les deux premières adresses correspondent très bien à l'aide de cette expression, mais la troisième adresse s'égare de ce que nous nous attendions à voir et échoue. En raison d'une règle obscure sur les bâtiments qui partagent un nom avec leur adresse, le numéro de rue est orthographié et notre expression régulière est incapable de le faire correspondre. La clé pour écrire un bon Regex est de prévoir ces exceptions dans vos données, et de les comptabiliser dans l'expression. Afin de faire correspondre les «deux» dans cette adresse, nous allons mettre dans une autre expression pour vérifier si et seulement si celui-ci ne parvient pas à correspondre. La plupart des adresses commencent par des caractères numériques, mais si elles n'ont pas alors cette expression va vérifier un mot à la place. Voici à quoi il ressemble: (?:^/ d +) | (?:^/ w +) C'est beaucoup plus simple qu'il n'y paraît, et utilise vraiment deux autres symboles Regex. Le symbole de la pipe signifie «ou». Par exemple, un | b ne ferait que vérifier si une correspondance, et si elle ne fonctionne pas, si b correspond. Le deuxième symbole est (?: ...), également connu sous le nom de groupe non marqué. C'est juste une façon pour nous de regrouper ces choses ensemble pour l'opération ou. En résumé, le premier groupe ici (?: ^ /) (d +) est juste faire la même chose qu'avant, mais quand il échoue l'expression tente de faire correspondre le deuxième groupe (?: ^ /) w +). Ce groupe est juste à la recherche de caractères Word (l'alphabet), et ne correspond pas à des espaces ou des chiffres. Cela nous permet de correspondre à la version Word de notre adresse ci-dessus sans problème. Pour en savoir plus sur match: Cet excellent poste par Adam Riley sur le chaos règne dans le blog. Comment: Démarrer avec des expressions régulières La fonction Regex_Match pour l'outil de formule. Crédit supplémentaire: il existe de nombreuses façons de structurer Regex; commentaire ci-dessous avec une meilleure alternative pour (?: ^ /) d +) | (?:^/ w +). Pourquoi est-ce mieux? Analyser L'appariement est agréable en ce que vous pouvez l'utiliser pour la validation, mais la méthode parse est vraiment quand Regex vient dans son propre, vous permettant d'extraire des informations utiles à partir d'un bloc de texte. L'outil Regex rend ce facile pour nous-tout ce dont nous avons besoin est de placer des parenthèses (...) autour de chaque chose que nous voulons sortir. Ceux-ci sont appelés groupes marqués-l'homologue de nos groupes non marqués ci-dessus (?: ...). Lorsque vous tapez les parenthèses, vous verrez ces pop dans une fenêtre Sélectionner les champs de sortie de style d'outil, ce qui vous permet de renommer vos champs et de modifier leurs types de données. Pour plus d'informations sur parse: Partie 2 de l'expression régulière et Alteryx d'Adam Riley. Remplacer Comme vous pouvez le voir, la méthode parse est vraiment juste une extension de match qui nous permet de tirer des choses hors du texte et le placer proprement dans une nouvelle colonne. Eh bien, ce qui se passe quand nous élargissons ce concept et nous demandons: «Comment puis-je remettre des choses dans?» C'est là que la méthode de remplacement entre en vigueur. Avec le remplacement, nous pouvons analyser des composants de notre chaîne, les remplacer, et même les réarranger. Nous pouvons le faire en spécifiant des groupes marqués pour dire à l'outil Regex ce qu'il faut remplacer et où, dans une langue n'importe qui peut comprendre ... La paresse dapper est tout à fait raison, bien sûr, nous pouvons utiliser des signes dollar $ avec des chiffres pour spécifier chaque groupe marqué exact. Par exemple, $1, $2 et $3 se réfèrent respectivement aux premiers, deuxième et troisième groupes marqués. Donc, pour notre liste d'adresses, si nous voulions juste analyser une liste des villes-États, nous pouvons taper dans l'expression $4, $5. Note nous avons pu ajouter dans notre propre petite virgule là, et un espace, juste en tapant dans cette zone de texte. La méthode Replace est très flexible, et vous pouvez également l'utiliser à partir de l'outil de formule avec la fonction Regex_Replace. Pour en savoir plus sur remplacer: Conversion d'une chaîne avec un signe $ en nombre Supprimer les zéros principaux Partie 3 de l'expression régulière et Alteryx d'Adam Riley Comment réduire les nombres: Regex à la rescousse Configurer un workflow pour utiliser un outil d'interface d'arborescence Grattage Web avec Alteryx Marquer Regex est assez astucieux quand les choses sont donnés à nous dans une belle liste, bien soigné, mais ce qui se passe si toutes ces adresses sont juste sans sous-évaluées par certains appel ou base de données API comme un bloc de texte unique? 3345 Michelson Drive, suite 400, Irvine, ca 92612, 12303 Airport Way, suite 250, Broomfield, co 80021, deux North Riverside Plaza, suite 1430, Chicago, il 60606 Eh bien, ce n'est pas très utile-c'est tout délimité par des virgules, mais nous n'avons pas de moyen facile de savoir quand une adresse se termine et une autre commence. Ce que nous avons besoin ici est la méthode de jeton, qui prendra ce morceau de texte et le diviser en colonnes ou en lignes, un peu comme l'outil Text to Columns. Il ya deux différences importantes qui désignent Regex distinguer si: Au lieu de correspondre à ce que vous ne voulez pas (comme une virgule), vous correspondez à ce que vous voulez (tout le reste). Vous avez la possibilité de choisir ce qui est divisé et ce qui est ignoré à l'aide d'un groupe marqué. Cela peut sembler Topsy-à l'envers, mais il vous donne en fait beaucoup plus de souplesse dans ce que/comment vous fractionnez vos données. Pour illustrer, nous allons diviser notre texte d'adresse de présentation en plusieurs lignes, en utilisant la virgule comme notre délimiteur. Puisque nous devons faire correspondre tout ce que nous voulons, nous devons utiliser l'expression (. +?) (?:,|$). On va casser ça. . + signifie un seul caractère. correspond à une ou plusieurs fois + ? est de savoir comment nous dire ce match pour être paresseux plutôt que gourmand. Il s'agit d'une distinction vraiment utile qui peut être un peu difficile à comprendre au début, mais pour les fins de ce cours crash nous allons juste se concentrer sur ce que le? signifie: match ce qui est avant zéro fois (pas du tout) ou exactement une fois. Le signe plus + est en fait le contraire: c'est un symbole avide, de sorte que le précédent un caractère. va essayer de faire correspondre une ou plusieurs fois. Alors qu'est-ce que cela signifie quand on dit quelque chose avide d'être paresseux? Eh bien, il modifie en fait à quel point il peut être gourmand en le forçant à regarder le prochain match. Et alors? signifie vraiment est: «match d'un caractère une ou plusieurs fois jusqu'à ce que vous pouvez correspondre à ce qui vient suivant». Qu'est-ce qui vient ensuite un groupe non marqué (?:, | $) qui fonctionne essentiellement comme un signe d'arrêt pour le précédent (. +?). Comme il n'est pas dans le groupe marqué, il ne sera pas présent dans le résultat. C'est juste dans un groupe non marqué afin que nous puissions lui dire de chercher soit une virgule, ou la fin de la ligne $ à la fin du texte de présentation. Ouf-c'est certainement beaucoup. N'hésitez pas à profiter de cette occasion pour s'étirer, aller faire une promenade, ou méditer. De toute évidence, l'outil Text to columns peut se diviser par des virgules plus facilement que ce qui précède, mais la souplesse de la symbolique vient à l'avant-plan lorsque nous essayons de faire quelque chose d'un tad plus utile. Par exemple, nous pouvons l'utiliser pour fractionner ce bloc d'informations d'adresse dans les trois adresses originales. Dans ce cas, nous utilisons simplement notre dernière expression de correspondance pour le code postal /d{5 pour marquer où chaque match se termine. Comme ci-dessus, nous savons que chaque ligne sera soit fin avec une virgule ou la fin de la ligne, et nous pourrions utiliser le (?:, | $) ici pour diviser ces avec succès. Dans l'exemple ci-dessus, j'ai choisi de présenter le? possibilité de faire correspondre zéro ou une fois pour remplacer ce-afin que nous puissions diviser sur une «virgule facultative» après le match de groupe marqué. Pour plus d'informations sur le jeton: Partie 2 de la Regex Adam Riley et Alteryx et un moteur fonctionne blog réponse de CTO Ned Harding. Crédit supplémentaire: le,? ne fonctionne pas dans le cas précédent, le fractionnement par des virgules seul-(. +?),? au lieu de (. +?) (?:,|$). Pourquoi? Commentaire avec une explication ci-dessous pour la gloire éternelle et les droits de vantardise. Maintenant, vous devriez avoir une compétence de niveau expert avec l'outil Regex! Si vous pouvez penser à un cas d'utilisation, nous avons laissé de côté, n'hésitez pas à utiliser la section commentaires ci-dessous! Considérez-vous comme un maître d'outils déjà? Faites-nous savoir à Community@alteryx.com si vous souhaitez que votre outil créatif utilise pour être présenté dans la série de maîtrise d'outils. Restez à l'écoute avec nos derniers messages chaque outil mardi en suivant Alteryx sur Twitter! Si vous souhaitez maîtriser tous les outils de concepteur, envisagez de vous abonner aux notifications par courrier électronique. L'outil Regex est un peu comme le couteau suisse de l'armée d'analyse dans Alteryx; Il ya un tas de façons que vous pouvez l'utiliser pour faire les choses plus rapidement ou plus efficacement, mais même si vous utilisez simplement la lame, il est encore immensément utile. Parfois, c'est tout ce dont vous avez besoin, mais si vous prenez le temps de comprendre comment utiliser quelques autres outils dans ce couteau, vous allez commencer à voir qu'il n'y a pas grand-chose que vous ne pouvez pas faire avec elle. 10,0
Afficher l'article complet
Supprimer l'espace vide de tête / de fin / tout Question Comment puis-je supprimer des espaces vides de mes données?? Au secour! Réponse Il y'a un quelques situations différentes concernant les espaces vides que vous êtes probable de rencontrer, mais le schéma ci-dessous (à partir de l'annexe v 10.6 exemple) répondra à toutes vos questions. La plupart des approches utilisent la fonction (Trim) de l'outil de Formule qui, sans un deuxième argument, taille par defaut les espaces de vos chaînes. Post Designer version 10.5 vous pouvez également utiliser l'outil de Nettoyage de données pour vous "nettoyer" vos champs! Devenez un Maître ici. 10,5
Afficher l'article complet
Utilisation d'instructions conditionnelles pour modifier vos données Si vous utilisez l'outil de formule dans la version 11.0 +, assurez-vous de vous familiariser avec la refonte de l'interface de l'outil! Un composant important du mélange de données applique des processus mathématiques ou transformations à des sous-ensembles de vos données. Souvent, cela nécessite d'isoler les données qui sont conformes à un certain nombre de critères que vous avez définis: "je veux seulement marquer les SKU pour les produits dont le coût est inférieur à $10" «les clients âgés de 25 à 40 devraient être classés dans le groupe A, 41-65 en tant que groupe B et 66 + en tant que groupe C» "classer les transactions en semaine ou en week-end". "si un produit est rouge, renommez R." Si c'est bleu, renommez le B. Si c'est jaune, renommez ça en Y. Si c'est vert, renommez ça en G. Sinon, renommez l'autre ". L'une de ces situations vous semble familière? Si oui, alors un bon endroit pour commencer à transformer vos données est les fonctions conditionnelles de l'outil de formule (figure 1). Les fonctions conditionnelles construisent des expressions qui vous permettent d'appliquer des processus aux données qui satisfont les conditions que vous définissez. Peu importe si vous venez du monde de SQL, Excel, R ou un autre programme de données qui a été de rendre votre vie plus difficile que ce qu'il devrait être, le concept de l'énoncé conditionnel reste le même: si une condition est ou n'est pas vrai, puis appliquer un processus ou un résultat. Sinon, appliquez un processus ou un résultat différent. Cette logique peut prendre le format de l'un des quatre types d'expressions différents: (1) une déclaration traditionnelle If peut être un outil puissant dans la transformation des données. Structurellement, Alteryx requiert quatre clauses distinctes pour appliquer cette logique de type à vos données: Si une condition est (pas) vraie alors appliquez la fonction a else appliquent la fonction B endif En utilisant la première situation (SKU et prix) à titre d'exemple, la déclaration If nous permet de déterminer quels produits seront marqués pour une analyse plus poussée: (2) une instruction imbriquée if permet de définir plusieurs conditions, en regroupant essentiellement des instructions logiques, en utilisant des instructions logiques répétées semblables à une instruction if unique. Bien que la documentation fournit un exemple avec trois conditions définies, ce n'est en aucun cas une limite dans le nombre de critères qui peuvent être définis. Tant que la syntaxe correcte est utilisée, de nombreuses autres conditions peuvent être définies! Considérez la deuxième situation (groupes d'âge des clients). En continuant avec la syntaxe correcte, quatre groupes (A, B, C et autres) sont créés à la suite de l'instruction imbriquée. Lorsque vous travaillez avec des instructions imbriquées, vous pouvez trouver utile de diviser chaque clause en une nouvelle ligne dans la zone expression, comme indiqué dans l'exemple ci-dessous. (3) bien que les instructions If en ligne (IIF) appliquent une logique similaire à une instruction if, l'évaluation d'une condition soit «true» ou «false», elles diffèrent syntaxiquement. Les expressions IIF nécessitent trois composants séparés par une virgule: une expression booléenne à évaluer, le résultat «vrai» et le résultat «false». Les résultats vrais et faux prennent en charge non seulement le texte mais aussi les opérations mathématiques. Dans le cas de la troisième situation, où un enregistrement ne peut être classé que comme l'un des deux types (en semaine ou en fin de semaine), une déclaration IIF classe efficacement les données selon un critère logique de savoir si la valeur de [Day] n'est pas «SAT» ou «Sun». Le résultat réel de cette instruction renvoie «jour ouvrable»; le faux résultat est «weekend». (4) la fonction de commutation de l'outil de formule est une gemme cachée! Pièce Find/Replace Tool, partie imbriquée if, instruction part case dans SQL ... c'est pratique! Cette expression évalue plusieurs conditions pour assigner un résultat désigné. Si aucune condition n'est remplie, une valeur par défaut (value) est définie. La fonction Switch offre un couple d'avantages sur des fonctionnalités similaires dans Alteryx. Tout d'abord, il accorde une grande partie de la souplesse d'une déclaration imbriquée if sans avoir à répéter IFS, thenes, ELSEIFs .... etc. Deuxièmement, il peut servir une fonction similaire comme outil de recherche/remplacement sans avoir à créer une deuxième instance de toutes les données que vous souhaitez trouver et les données correspondantes utilisées comme remplacement. Me sauver un peu de temps et de frappe sujette aux erreurs? Fais-moi signe! Remarque: les types d'opérateurs qui peuvent être utilisés dans une expression dépendent du type de données du champ de sortie. Si vous écrivez dans le champ chaîne (ou autre type de texte), le résultat nécessitera des guillemets (simple ou double) autour. Notez comment le groupe'a'est encapsulé par des guillemets simples. Les champs numériques, d'autre part, ne nécessitent pas de guillemets autour du résultat. * le workflow ci-joint est compatible avec Alteryx designer version 10.0 et supérieure. Un composant important du mélange de données applique des processus mathématiques ou transformations à des sous-ensembles de vos données. Souvent, cela nécessite d'isoler les données qui respectent un certain critère que vous avez défini. Les fonctions conditionnelles construisent des expressions qui vous permettent d'appliquer des processus aux données qui satisfont les conditions que vous définissez. 10,0
Afficher l'article complet
Apis in Alteryx: CURL et outil de téléchargement Les connexions API donnent accès à de nombreuses applications Web, systèmes de base de données ou programmes en exposant des objets ou des actions à un développeur dans un format abstrait qui peut facilement être intégré dans un autre programme. En d'autres termes, une API fonctionne comme un point d'intégration où vous pouvez accéder par programmation ou manipuler des informations pour un programme (ou Workflow) que vous construisez. Dans le contexte de l'utilisation du concepteur, les API sont le plus souvent utilisées pour accéder aux magasins de données, utiliser les services hébergés sur le Web tout en fusionnant ou créer des connecteurs. La plupart des API sont dans une architecture reposante, le style architectural du logiciel du World Wide Web, et généralement communiquer sur http avec les mêmes actions http, ou «verbes», que les navigateurs Web utilisent pour récupérer des pages Web et des données de transfert: Get, post, put, supprimer, parmi autres. En tant que tel, tout outil ou logiciel qui vous donne la possibilité d'utiliser le protocole de requête-réponse http vous permettra de communiquer avec ces API reposantes. Les trois que j'utilise le plus couramment pour établir mes connexions sont facteur (une application de test grande qui ressemble à la configuration de l'outil de téléchargement Alteryx), curl (un outil de ligne de commande et l'une des bibliothèques de transfert http/FTP prédominant), et le logiciel favori de tout le monde : Alteryx. Entre ces trois outils, et peut-être un moniteur de trafic Web comme Fiddler (cela vous permettra de voir les demandes http étant envoyés/reçus sur votre réseau), vous devriez être en mesure d'établir, de maintenir et d'automatiser la connectivité à peu près n'importe quelle API de repos de votre choix. Cet article expose brièvement comment le faire dans CURL et Alteryx afin que vous puissiez (1) facilement pivoter entre les deux pour plus de robustesse de dépannage/implémentation et (2) plus facilement mettre en œuvre des connexions API dans vos workflows Alteryx, même quand ils sont documentés par. La première étape de l'établissement d'une connexion API consiste à localiser la documentation du développeur. La qualité et le détail de la documentation pour une API est souvent le réactif limitant de l'établissement d'une connexion, donc assurez-vous d'utiliser une API qui a la meilleure fonctionnalité, puis la documentation. La documentation vous aidera à parcourir l'authentification de l'API avant d'introduire les différentes demandes que vous pouvez faire. Comme curl est fréquemment utilisé parmi les développeurs d'API, vous remarquerez que bon nombre des demandes d'exemple que vous avez introduites seront dans la syntaxe curl. Être capable de déchiffrer ces demandes CURL vous aidera à le recréer facilement dans un programme avec une interface, comme facteur ou Alteryx. Considérez les demandes Get et post ci-dessous (toutes incluses dans le workflow v 10.6 ci-joint pour référence-s'il vous plaît noter que le workflow ne s'exécutera pas en raison d'informations d'identification expurgées à l'API): La documentation nous donne une URL pour communiquer avec via une action http (deux dans ce cas, Get et post), spécifique à cette demande d'inscription des utilisateurs sur les critères de recherche: http://Community.lithium.com/Community-Name/restapi/VC/Search/Users. Il note également un paramètre, ou un argument, pour accompagner la demande-ces mots clés sont le plus souvent associés à la charge utile de la demande. Avec un argument de charge utile pour l'authentification (expurgée), nous allons utiliser ces éléments pour générer nos demandes. Pour les demandes CURL, n'hésitez pas à utiliser l'exécutable installé avec votre concepteur Alteryx, situé dans C:/Program Files/Alteryx/bin/RuntimeData/Analytic_Apps/ par défaut (vous pouvez obtenir votre propre téléchargement ici). Télécharger Demande en curl (ligne de commande): (l'option – i est utilisée pour inclure les en-têtes de réponse pour qu'ils ressemblent au format Alteryx ci-dessous) Demande en Alteryx outil de téléchargement: Publier Demande en curl (ligne de commande): Demande en Alteryx outil de téléchargement: Remarque: une série de commandes curl peut également être implémentée dans un fichier .bat à exécuter dans un workflow via l'outil exécuter la commande (la maîtriser ici). Traduction de la RequestsAbove vous pouvez voir des exemples côte à côte de la syntaxe de CURL et comment la demande de l'API serait regarder dans le concepteur. Bien que nous ne pouvons pas aller sur chaque type de demande que vous pourriez avoir besoin, nous pouvons vous équiper avec un dictionnaire de poche métaphorique qui vous aidera à traduire entre les deux: L'URL de votre demande CURL devra simplement faire son chemin vers le champ URL dans l'onglet de base de l'outil de téléchargement. Le délai d'attente (--connect-timeout dans CURL) peut être modifié dans l'onglet connexion. Les schémas ci-dessous identifient certains des éléments de notre table de recherche, mais dans la syntaxe: En outre, facteur, l'outil mentionné plus haut, peut construire des demandes beaucoup comme dans Alteryx et a un "générer du code" fonctionnalité qui va convertir la demande à la syntaxe de Curl utilisable qui peut être utile dans la traduction. Bien que ce qui précède permet d'élucider quelques-unes des similitudes entre CURL et Alteryx requêtes http, il ya aussi des spécificités notables à l'utilisation de chacun. Par exemple, CURL vous donnera beaucoup plus de contrôle sur les options de configuration plus granulaires pour chaque demande; des choses comme quelle version de http à utiliser, en passant des cookies, en utilisant des proxys, entre autres. Alteryx, d'autre part, vous donne la flexibilité de construire une demande entièrement différente de chaque ligne de données entrant dans l'outil de téléchargement, ce qui rend presque sans effort pour générer un grand nombre de demandes personnalisées à vos données ou d'automatiser les interactions API qui aurait autrement besoin de programmation intimidant. En outre, Alteryx rend beaucoup plus facile d'analyser une réponse API dans des données utilisables de telle sorte qu'il peut être mélangé avec vos autres datasets-tous à l'intérieur du même workflow qui a fait les demandes. Selon les types de demandes que vous allez faire à votre API, vous aurez à regarder les différents formats ci-dessus et de déterminer l'approche optimisée. Par exemple, que faire si vous avez besoin de configuration de demande très spécifique, mais vous vous voyez faire un grand nombre de demandes? Vous pouvez utiliser Alteryx pour automatiser l'écriture de toute la syntaxe de vos commandes curl dans un fichier .bat, puis exécuter ce fichier .bat dans un outil de commande Run à partir de Alteryx. Maintenant que vous connaissez les deux, choisissez judicieusement! 10,5
Afficher l'article complet
Exécuter un script Python dans Alteryx Question Puis-je exécuter mes scripts Python dans le concepteur Alteryx? Réponse Oui! Nous pouvons utiliser l'outil exécuter la commande pour faire exactement cela. Voici un exemple, fait dans la version 10.6, démontrant l'utilisation de l'outil exécuter la commande pour exécuter un script Python dans le concepteur et utiliser sa sortie dans le workflow: Pour un script Python, votre commande doit être Python .exe. Si le répertoire où python existe est dans votre variable PATH système, vous pouvez simplement taper Python .exe. Sinon, vous devrez lui donner le chemin complet, en gardant à l'esprit de citer la chaîne si il ya des espaces (par exemple, "Program Files"). Dans les arguments de commande, vous taperez l'emplacement de votre script Python (le répertoire de travail par défaut de Alteryx est le répertoire du module en cours d'exécution, donc il peut être plus facile de garder votre script dans le même dossier pour simplement taper "your_python_script" plutôt que la pleine (Path) et toutes les options nécessaires. N'oubliez pas de citer cette chaîne! L'exemple de script de l'attaché envoie simplement du texte à un fichier texte à utiliser comme entrée pour le concepteur (note: il ne s'exécutera pas, sauf si vous avez configuré votre environnement Python): Comme vous pouvez le voir, nous avons exécuté avec succès un script Python et utilisé l'entrée de résultats de lecture pour apporter le résultat du script dans le concepteur pour un traitement ultérieur. 10,5
Afficher l'article complet
Supprimer les zéros principaux Question Comment puis-je supprimer les zéros de premier plan d'un champ? Réponse Utilisez l'outil formule (si vous utilisez l'outil formule dans v 11.0 +, assurez-vous de vous familiariser avec la refonte de l'interface de l'outil!) et la fonction TrimLeft () pour supprimer les zéros principaux. TrimLeft (String, "y")-supprime y du début de la chaîne. Par défaut pour couper les espaces. Exemple d'entrée: Sortie d'échantillon: Configuration de formule: TrimLeft ([champ1], "0") supprime tous les 0 caractères du début de la chaîne. Si vous ne voulez pas remplacer 0 par "", filtrer tous les enregistrements qui = ='0', utilisez TRIMLEFT () sur toutes les autres chaînes, puis Union les résultats. Remarque: l'utilisation de Trim () supprime la chaîne du début et de la fin de la chaîne. Vous pouvez également utiliser l'outil Regex pour rechercher et remplacer les zéros principaux. Configuration Regex: 0 Voir l'exemple de workflow v 10.6 attaché. Comment puis-je supprimer les zéros de premier plan d'un champ? Utilisez l'outil formule et la fonction TrimLeft () pour supprimer les zéros principaux! Comment
Afficher l'article complet
'comment guider'pour renommer dynamiquement les fichiers de sortie L'une des grandes fonctionnalités de l'outil de sortie est l'option pour prendre le nom de fichier ou de table (ou une partie de celui-ci) à partir d'un champ. Il vous permet d'ajouter un suffixe, de précéder un préfixe, de modifier le nom du fichier entier ou tout le chemin du fichier. Il vous donne également la possibilité de garder le champ sur la sortie.   Un exemple où cela est particulièrement utile est si vous avez un processus qui s'exécute régulièrement, mais vous ne voulez pas écraser le fichier de sortie à chaque fois. Vous pouvez utiliser la fonction datetimetoday () (fonctions heure de date) pour trouver la date d'aujourd'hui, puis l'utiliser pour mettre à jour le nom du fichier.   Pour les fichiers Excel, les choses fonctionnent un peu différemment en raison du format filename comme nom de fichier. .xslx || SheetName.   Le nom de fichier/table de modification de l'option met à jour le nom de la feuille et non le nom du fichier.   Afin de mettre à jour le nom du fichier, vous devez sélectionner l'option modifier le chemin d'accès entier. En amont, vous devrez créer un champ qui contient l'intégralité du chemin d'accès au fichier. Voici un exemple d'un chemin d'accès complet qui utilise la date d'aujourd'hui comme nom de fichier:   "C:/Users/username/Documents" + DateTimeFormat (datetimetoday (), "% y_% m_% d") + ". .xlsx || Sheet1"   Consultez le workflow ci-joint pour obtenir des exemples de mise à jour d'un fichier Excel et d'un fichier délimité par des virgules avec la date d'aujourd'hui. Traitement dynamique
Afficher l'article complet
Grattage Web Grattage Web, le processus d'extraction de l'information (généralement en tableaux) à partir de sites Web, est une approche extrêmement utile pour recueillir encore des données hébergées sur le Web qui n'est pas fourni via les API. Dans de nombreux cas, si les données que vous recherchez sont autonomes ou capturées complètement sur une page (pas besoin de requêtes API dynamiques), il est encore plus rapide que le développement de connexions API directes à collecter. Avec la richesse des données déjà fournies sur des sites Web, l'accès facile à ces données peut être un grand supplément à vos analyses pour fournir le contexte ou juste fournir les données sous-jacentes pour poser de nouvelles questions. Bien qu'il existe une poignée d'approches de grattage Web (deux détaillées sur notre communauté, ici et ici), il ya un certain nombre de grands, libres, outils (parsehub et import.IO pour n'en nommer que quelques-uns) en ligne qui peut rationaliser vos efforts de grattage Web. Cet article détaille une approche que je trouve être particulièrement facile, en utilisant Import.IO pour créer un extracteur spécifique à vos sites Web désirés, et l'intégration des appels à eux dans votre flux de travail via un lien API de requête en direct qu'ils fournissent par le biais du service. Vous pouvez le faire en quelques étapes rapides: 1. Accédez à leur page d'accueil, https://www.Import.IO/, et «inscrivez-vous» dans le coin supérieur droit: 2. Une fois que vous êtes inscrit à l'utilisation du service, accédez à votre tableau de bord (un lien peut être trouvé dans le même coin de la page d'accueil une fois connecté) pour gérer vos extracteurs. 3. Cliquez sur "nouvel extracteur" dans le coin supérieur gauche et collez l'URL qui contient les données que vous essayez de gratter dans le "créer Extractor" pop up. Depuis la saison de dessin fantasy football est juste devant nous, nous allons aller de l'avant et l'utilisation comme un exemple de données compilées par les meilleurs buteurs de l'année dernière fourni par ESPN afin que vous ne finissent pas comme ce gars-là (Merci plus tard). Nous savons que nos utilisateurs vont dur et les enjeux sont probablement assez élevés, nous voulons donc vouloir obtenir ce droit la première fois, et en utilisant une approche qui est assez reproductible pour nous fournir les informations nécessaires pour nous garder parmi les équipes de haut chaque année. 4. Après quelques instants, import.IO aura gratté toutes les données de la page Web et vous l'affichera dans leur «vue de données». Ici, vous pouvez ajouter, supprimer ou renommer des colonnes dans la table en sélectionnant des éléments sur la page Web – il s'agit d'une étape facultative qui peut vous aider à affiner votre dataset avant de générer votre URL de requête Live API pour le transfert, vous pouvez tout aussi facilement effectuer la plupart de ces opérations dans t Il designer. Pour mon exemple, j'ai renommé les colonnes pour refléter les noms de statistiques sur ESPN et a ajouté le "misc TD" champ qui a échappé à l'algorithme de grattage. 5. Une fois que vos données sont prêtes à l'importation, cliquez sur le bouton rouge "Done" dans le coin supérieur droit. Vous serez redirigé vers votre tableau de bord où vous pouvez maintenant voir l'extracteur que vous avez créé dans la dernière étape-Sélectionnez cet extracteur et recherchez la pièce de puzzle "intégrer" l'onglet juste au-dessous du nom de l'extracteur dans votre vue. Vous pouvez copier et coller l'"API de requête en direct" (il ya aussi une option pour télécharger un fichier CSV de vos données) énumérés ici dans une fenêtre de navigateur pour copier la réponse JSON qui contient vos données, ou vous pouvez mettre en œuvre un appel à elle directement dans votre workflow en utilisant l'outil de téléchargement (n'oubliez pas de sélectionner "coder l'URL" comme vous spécifiez le champ URL): Voilà! Vous devez maintenant avoir une API de requête en direct intégrée pour votre page Web, et avec un extracteur qui peut être exploité pour ratisser des données à partir de ce site si vous voulez essayer d'autres pages ainsi. Si vous souhaitez en savoir plus sur l'approche, ou sur la façon de le personnaliser avec des scripts externes, essayez la communauté Import.IO. L'échantillon que j'ai utilisé ci-dessus est attaché ici dans la version 10.5 de workflow yxmd, il vous suffit de mettre à jour l'API de requête en direct avec un spécifique à votre compte, extracteur et URL de page Web. Si vous décidez de lui donner un essai avec l'exemple ci-dessus, soyez sûr de nous faire savoir si nous avons aidé votre équipe fantastique gagner gros! 10,5
Afficher l'article complet
Maîtrise de l'outil | Entrée dynamique Cet article fait partie de la série d'outils de maîtrise, une compilation des contributions de base de connaissances pour introduire des exemples de travail diversifiés pour les instruments de concepteur. Ici, nous allons plonger dans les utilisations de l'outil d'entrée dynamique sur notre façon de maîtriser le concepteur Alteryx: Pour la plupart des outils qui ont déjà «dynamique» dans le nom, il serait redondant de les appeler l'un des outils les plus dynamiques dans le concepteur. Ce n'est pas le cas pour l'entrée dynamique. Avec la configuration de base, l'outil d'entrée dynamique vous permet de spécifier un modèle (ce qui peut être un fichier ou une table de base de données) et d'entrer n'importe quel nombre de tables qui correspondent à ce format de modèle (forme/schéma) en lisant une liste d'autres sources ou en modifiant des requêtes SQL. Ceci est particulièrement utile pour les ensembles de données périodiques, mais l'utilisation de l'outil va bien au-delà de sa configuration de base. Pour vous aider dans votre mélange de données, nous sommes allés de l'avant et catalogué une poignée d'utilisations qui rendent l'outil d'entrée dynamique si polyvalent: Lecture dans une liste de fichiers par leurs chemins de fichiers (par opposition à l'ouverture de fichiers dans le même répertoire avec un joker dans l'outil de données d'entrée). Pour ce faire, vous devez uniquement spécifier un champ d'emplacements de fichiers en tant que votre champ dans "lire une liste de sources de données" et "changer le chemin de fichier entier" en tant qu'action. L'outil de répertoire est souvent utilisé pour répertorier les fichiers: Modification des requêtes SQL pour remplacer les chaînes, mettre à jour les clauses WHERE, appliquer des filtres spatiaux et modifier les procédures stockées pour votre entrée (voir ci-joint). Accès à plusieurs feuilles de calcul à partir du même classeur Excel (voir ci-joint). Lot dans le concepteur de plusieurs feuilles de plusieurs fichiers Excel-avec des formats différents! Depuis la modification des requêtes SQL et l'accès à plusieurs feuilles de calcul à l'intérieur du même fichier Excel sont les approches les moins documentées sur notre communauté, nous avons des approches détaillées pour les deux dans notre joint v 10.5 workflow "Dynamic Input yxzp." Pour des raisons de transférabilité (nous n'aurons pas accès aux mêmes connexions de base de données), la requête SQL utilisée comme exemple est simplement la sélection de tous les enregistrements du même fichier Excel que le premier exemple-vous pouvez afficher la requête d'origine en regardant dans le fichier de modèle sq L vue de l'éditeur en sélectionnant "table ou requête:" Vous cherchez plus d'informations sur l'utilisation de l'outil d'entrée dynamique? Essayez notre communauté Live formation vidéo Dynamic inputs. Si vous souhaitez en savoir plus sur la saisie de données en général, n'oubliez pas de vérifier notre organigramme de données d'entrée ultime ainsi! Maintenant, vous devriez avoir une compétence de niveau expert avec l'outil d'entrée dynamique! Si vous pouvez penser à un cas d'utilisation, nous avons laissé de côté, n'hésitez pas à utiliser la section commentaires ci-dessous! Considérez-vous comme un maître d'outils déjà? Faites-nous savoir à Community@alteryx.com si vous souhaitez que votre outil créatif utilise pour être présenté dans la série de maîtrise d'outils. Restez à l'écoute avec nos derniers messages chaque outil mardi en suivant Alteryx sur Twitter! Si vous souhaitez maîtriser tous les outils de concepteur, envisagez de vous abonner aux notifications par courrier électronique. Pour la plupart des outils qui ont déjà «dynamique» dans le nom, il serait redondant de les appeler l'un des outils les plus dynamiques dans le concepteur. Ce n'est pas le cas pour l'entrée dynamique. Avec la configuration de base, l'outil d'entrée dynamique vous permet de spécifier un modèle (ce qui peut être un fichier ou une table de base de données) et d'entrer n'importe quel nombre de tables qui correspondent à ce format de modèle (forme/schéma) en lisant une liste d'autres sources ou en modifiant des requêtes SQL. Ceci est particulièrement utile pour les ensembles de données périodiques, mais l'utilisation de l'outil va bien au-delà de sa configuration de base. Pour vous aider dans votre mélange de données, nous sommes allés de l'avant et catalogué une poignée d'utilisations qui rendent l'outil d'entrée dynamique si polyvalent: 10,5
Afficher l'article complet
Comment l'outil Jointure fonctionne et pourquoi vous pourriez obtenir plus d'enregistrements que prévu Tandis que l'outil Jointure est facilement l'un des outils les plus utilisés dans Alteryx, il peut également être l'un des plus mal compris. Cela est encore plus probable si un nouvel utilisateur n'a jamais utilisé des fonctions "joindre" dans autre plate-formes de manipulation de données ou il se joint à de grandes tables où il ne surveille pas la trace des enregistrements à l'intérieur des champs auxquels il se joint. Ainsi, je vais couvrir trois cas différents que vous serez probable à rencontrer qui vous montrera comment joindre deux tables en utilisant un champ commun. Le workflow que je vais couvrir (ci-joint dans cet article) est un workflow que j'ai fait en 10,5 et contient les mêmes visuels qui sont ci-dessous. Cas #1: Joindre par champs qui ont tous les deux des enregistrements uniques C'est le cas le plus simple et le plus facile à comprendre. Dans ce cas, nous faisons une "Jointure" par les champs nommés «fruit» dans les deux entrées. La jointure alignera les enregistrements des deux tables si les enregistrements dans les champs "fruit" correspondent. Ainsi, la table jointe attendue (sortie J) devrait ressembler à ceci: Assez simple Cas #2: Joindre par champs où un seul a des enregistrements uniques Pour ce cas, nous avons deux enregistrements pour "Banana" dans notre entrée gauche. Cela signifie que l'enregistrement avec "Banana" dans l'entrée de droite correspondra deux fois et sera ajouté aux deux enregistrements de l'entrée gauche. Notre Sortie devrait ressembler à ceci: Cas #3: Joindre par champs qui ont tous les deux des enregistrements non uniques Celui-ci peut être le plus difficile à comprendre, mais j'espère que, après avoir regardé cela visuellement et mathématiquement vous comprendrez pourquoi cela fait sens et ce que vous pouvez faire pour éviter les enregistrements indésirables. Dans ce cas, nous avons deux enregistrements de «fruits» qui ont tous les deux «banane» dans les deux tableaux. La même chose se passe ici, tout comme le cas ci-dessus, sauf maintenant, il arrive deux fois parce que nous avons deux enregistrements de l'entrée droite qui correspondent à deux enregistrements de l'entrée de gauche. Ainsi, notre production aura un total de 4 enregistrements qui contiendront le mot «banane». La sortie devrait ressembler à ceci: Pour examiner cela mathématiquement pour le cas #3 et le cas #2, vous saurez combien d'enregistrements vous obtiendrez pour chaque instance d'enregistrement en multipliant la quantité d'enregistrements qui apparaissent dans les deux tables. Dans l'exemple ci-dessus puisque nous faisons une "Jointure" sur "fruit" et nous voyons l'enregistrement "banana" deux fois dans les deux tables, vous pouvez le considérer comme 2 bananes x 2 bananes = 4 bananes. Si nous ajoutons une autre rangée sur notre entrée droite comme ça: Nous aurons maintenant 3 x 2 donc nous devrions nous attendre 6 combinaisons d'enregistrements avec "Banana" dans le champ "fruit" Si vous avez joint deux tables et vous recevez beaucoup plus d'enregistrements, alors que vous vous attendiez pas, ceci est probablement la cause de votre problème. Si on ne comprend pas les cas présentés ci-dessus ,cela pourrait certainement rendre quel qu'un fou. Pour les meilleures pratiques, si j'étais vous, je suivrais ces deux étapes avant de joindre toutes autres tables: première: Vérifiez vos tables pour des enregistrements en double. Pour le cas ci-dessus, comme nous avons trois doublons qui viennent de notre entrée droite, nous pouvons simplement utiliser l'outil Unique et se débarrasser de ces doublons. La sortie sera exactement la même sortie que la sortie de cas #2 comme il n'y aura qu'un seul enregistrement de "Banana" après l'outil Unique. 2ème: Regardez si la "Joindre sur plusieurs champs" est l'option la plus appropriée. Exemple: nous avons la table 1 avec deux enregistrements contenant « Banana » pour « fruit » et deux enregistrements contenant « X » pour « Store ID » avec « FruitID » correspondant à « fruit ». Le tableau 2 a les mêmes champs « fruit » et « Store ID », sauf que maintenant nous avons un champ « Store employees » qui s'associe au « Store ID ». Tableau 1 tableau 2 Nous voulons que toutes ces données soient réunies pour qu'ils se correspondent correctement. Idéalement, nous ne devrions avoir que quatre enregistrements sortent de notre "jointure" comme nous voulons obtenir les "Store Employees" et "FruitID" champs dans une table. Par contre, si nous devions joindre à un seul champ commun, que ce soit "Store ID" ou "Fruit", nous obtiendrions des combinaisons et les données ne seraient pas alignées correctement. Voir ci-dessous. Joindre sur "Fruit" Dans ce cas, nous obtenons deux enregistrements où nos "Store ID" ne correspondent pas. Joindre sur "StoreID" Dans ce cas, nous obtenons deux enregistrements où nos "Fruits" ne correspondent pas. Pour corriger cela, nous allons configurer notre "Jointure" pour correspondre sur les champs "Fruits" et "Store ID" Après avoir Exécuté, la table jointe devrait ressembler à ceci: Lors de "jointure" avec plusieurs champs, nous nous assurons que les enregistrements de ces deux champs correspondent avant de "Joindre". Un moyen facile de penser à cela est d'imaginer que "Fruits" et "Store ID" se font fusionner ensemble. Maintenant, nous avons des enregistrements uniques parce que nous aurions Banana X et Banana Y comme deux entités uniques et notre jointure va maintenant devenir un enregistrement 1 X enregistrement joint 1. 10,5
Afficher l'article complet
Upload to SFTP/FTP-plus d'exemples avec Alteryx 10,5 Dans un article précédent, nous vous avons montré comment vous pouvez télécharger sur FTP en utilisant l'outil de téléchargement. Avec la sortie de Alteryx 10,5, l'outil de téléchargement prend désormais en charge le transfert vers SFTP. Avec cet ajout, nous allons profiter de l'occasion pour vous montrer quelques exemples plus de téléchargement de données à sftp/FTP et vous montrer comment il peut être transparente. Dans cet article, je vais montrer deux exemples de téléchargement sur un serveur sftp: un fichier à partir d'un disque local ou d'un partage réseau données de workflow directement à partir de Atleryx en tant que fichier CSV Si, comme moi, vous n'avez pas et serveur SFTP pour travailler avec, mais vous souhaitez toujours tester cette fonctionnalité, vous pouvez télécharger et exécuter un serveur SFTP localY-je suis d'essai avec ce libre autonome un. Allons-y! 1. Télécharger un fichier à partir d'un disque local ou d'un partage réseau Dans le premier exemple, je vais pointer Alteryx pour charger un fichier à partir d'un chemin sur le disque local et utiliser l'outil de téléchargement pour le télécharger. Je commence par l'aide d'un outil de saisie de texte pour entrer l'URL (l'adresse du serveur FTP/SFTP), y compris le numéro de port et le chemin d'accès complet du fichier avec le nom du fichier de l'endroit où je veux enregistrer le dossier. Je suis en cours d'exécution mon serveur SFTP sur localhost port 22334 et je veux enregistrer mon fichier sur le répertoire racine du serveur SFTP donc mon URL est sftp://localhost:22334/filename.xlsx. N'oubliez pas de démarrer l'URL avec sftp://ou FTP://selon le protocole que le serveur est en cours d'exécution. J'ajoute également l'emplacement du fichier dans le deuxième champ. Bien sûr, vous pouvez utiliser un outil de formule pour créer des URL plus dynamiques et des noms de fichiers, mais je suis le garder simple pour cet exemple. Je n'ai pas mentionné toutes les exigences spéciales pour le téléchargement de données à sftp/FTP alors maintenant est un bon moment pour le faire. Pour que l'outil de téléchargement télécharge des données, les données doivent être transformées en objet BLOB et l'outil doit être configuré pour envoyer une commande put. Je vais lire dans le fichier et de transformer son contenu en un blob en un seul aller à l'aide de l'outil d'entrée BLOB. Dans l'outil d'entrée BLOB, je vais mettre un nom de fichier d'espace réservé, configurer l'outil pour remplacer le chemin entier avec le champ, et pointer vers le champ qui a le chemin du fichier d'entrée. La sortie de l'outil d'entrée BLOB est un objet BLOB. Dans l'outil de téléchargement dans l'onglet de base, je pointe l'URL vers le champ qui a les détails du serveur-"adresse" dans mon cas. Sous l'onglet charge utile, j'ai défini l'action http pour mettre et définir l'outil pour prendre la chaîne de requête/corps de champ et le pointer vers le champ qui a l'objet BLOB. Sous l'onglet connexion, j'ai défini le nom d'utilisateur et le mot de passe sur les informations d'identification correctes. Maintenant, je lance le workflow et Alteryx va lire le fichier, créer l'objet BLOB et le télécharger sur le serveur SFTP. Mon dossier serveur SFTP racine est défini à C:/temp/sftp et là je peux voir le fichier filename. xlsx que je viens de télécharger. 2. Transférer les données de workflow directement dans un fichier CSV sur le serveur SFTP Dans le deuxième exemple, je vais lire des données à partir d'un fichier Excel, désélectionner certaines colonnes, puis télécharger le résultat dans un fichier CSV en utilisant SFTP. Vous pouvez considérer l'outil de sélection comme la partie de votre workflow qui traite des données et de l'outil d'identification d'enregistrement à l'outil de téléchargement comme pièce pour préparer le téléchargement. Le processus de téléchargement est très similaire au premier exemple et la majorité du workflow est pour la préparation des données et la création de l'objet correct à télécharger. Maintenant que j'ai lu-in, nettoyé, et préparé mes données, c'est à quoi il ressemble. En guise de rappel, nous aurons besoin d'un objet BLOB pour alimenter l'outil de téléchargement à l'aide de la commande put. La section suivante du workflow prend les valeurs des colonnes et des lignes de ma table et les concatène dans un seul champ contenant des données séparées par des virgules. Je vais alimenter ce champ dans l'outil de conversion BLOB et la sortie de l'outil de téléchargement pour le télécharger sur le serveur. Puisque je vais être transposant et filtrant des données, j'aurai besoin d'avoir un point de référence aux détails originaux et donc j'emploie l'outil d'identification d'enregistrement pour créer ce point de référence. Je transpose ensuite la table à l'aide de l'outil transpose avec l'ID d'enregistrement comme point de pivot (le champ clé) pour travailler avec une seule colonne au lieu de répliquer le travail sur plusieurs colonnes-en général, la transposition des données et le travail avec les colonnes nom-valeur ont tendance à simplifier transformant et manipulant des tables. Maintenant que j'ai mes données dans une seule colonne, je vais utiliser un outil Sumarize pour créer les lignes CSV en regroupant sur recordID et concatinating les valeurs avec "," comme séparateur. Je vais aussi avoir besoin de créer la première ligne du fichier CSV-les noms de champs-donc je prends le premier enregistrement (record ID = 1) avec un outil de filtrage et concatinate les valeurs dans la colonne nom avec "," comme le délimiteur. Le résultat est un chaque enregistrement dans mes données a une rangée de données séparées par des virgules tout dans une colonne. Avec les deux tables prêtes, l'étape suivante consiste à Union les noms de champs et les valeurs dans une table unique avec l'outil Union et en veillant à ce que l'outil est configuré pour définir un ordre de sortie spécifique. De cette façon, vous obtenez le nom du champ avant les valeurs de champ dans le ouptut. Le tableau résultant est ensuite concaténé dans un seul champ avec l'outil Sumarize en utilisant "/n" (nouvelle ligne) comme délimiteur. Les données résultantes sont ensuite introduites dans l'outil BLOB Convert pour créer l'objet BLOB. En outre, l'URL cible est ajoutée à la table à l'aide d'un outil champs Append. l'outil de téléchargement est configuré avec une configuration similaire au premier exemple. Exécuter le workflow et, voila, nous avons le fichier téléchargé sur le serveur en tant que filename. csv. Le workflow utilisé dans cet article et le fichier de configuration RebexTinySFTPServer (Rename file from. log to. exe. config) sont joints à ce message. Veuillez noter que vous devez modifier la configuration de l'outil de téléchargement (adresse et informations d'identification) pour que le workflow fonctionne sur votre configuration. Ces exemples ont été construits avec Alteryx 10,5 (10.5.9.15014). 10,5
Afficher l'article complet
Sortie de plusieurs fichiers à l'aide du même modèle Excel Vous pouvez avoir un cas d'utilisation par lequel vous disposez d'un ensemble de données volumineux et que vous souhaitez le produire pour séparer les fichiers Excel. Toutefois, dans chacun de ces fichiers Excel, vous souhaitez appliquer un format de modèle. Par exemple, j'ai un DataSet qui a trois ID uniques chacun avec 10 enregistrements. Je veux à la sortie de chacun de ces enregistrements d'ID unique à différents fichiers Excel, mais donner à l'utilisateur la possibilité de filtrer les champs directement après que les données ont été écrites. Dans Alteryx il y a la manière native d'ajouter des filtres dans Excel. Une façon d'y parvenir est de créer un fichier Template Excel avec des filtres déjà appliqués à la première ligne dans Excel. Dans Alteryx nous pouvons alors spécifier une gamme de cellules pour ajouter des données aussi, et par la suite cela va automatiquement remplir les filtres et donner à l'utilisateur l'option de filtrer dans Excel immédiatement. Exemple de fichier de modèle Avant de commencer, il y a quelques pré-requis: Cet exemple utilise des fichiers .xlsx Un fichier de modèle doit déjà exister afin de trouver la plage de données que vous souhaitez que les données insérées dans. Les feuilles Excel que vous souhaitez écrire les données doivent déjà exister avec le format de modèle inséré. Considérations Selon le nombre de variables que vous avez dans votre champ unique choisi, il peut être difficile et la douleur jalonnement pour créer manuellement les fichiers Excel avec des modèles insérés. Par conséquent, il existe deux options potentielles que vous pouvez prendre. Option 1: plus petit nombre de variables: Manual créer les différents fichiers Excel pour chaque variable et ajouter dans le modèle. Option 2: plus grand nombre de variables: créez un script .bat ou .exe qui crée les fichiers Excel spécifiques à chacune des variables que vous avez dans votre DataSet et insère le fichier de modèle. Une fois que vous avez créé le script .bat, vous pouvez l'exécuter à l'aide de l'outil exécuter la commande dans Alteryx. Une fois que les fichiers Excel ont été créés avec le modèle inséré, nous sommes prêts à passer à Alteryx. Dans quel format vos données sont-elles nécessaires? Votre dataset principal doit correspondre au fichier de modèle que vous avez créé dans Excel. Cela signifie que vous devez avoir le même nombre de champs dans votre DataSet, comme vous le faites dans votre fichier de modèle. Cela devient particulièrement important lorsque nous parlons de plages nommées plus loin dans cet article. Une fois que les données ont le bon nombre de champs, nous avons besoin pour générer le champ chemin d'accès complet afin que nous puissions écrire au fichier modèle Excel correct. La meilleure façon de le faire est de construire le chemin d'accès complet vous-même à l'aide d'un outil de formule. Cet article décrit comment le faire et au lieu d'utiliser le champ [State], vous pouvez utiliser le champ unique que vous cherchez à créer de nouveaux fichiers Excel pour. Une fois que vous avez créé les chemins complets, vous vous demandez peut-être comment Alteryx sait exactement où placer les données dans les fichiers Excel. C'est simple, tout ce que vous devez faire est d'ajouter le nom de la feuille et la plage nommée à la fin du chemin d'accès complet que vous venez de créer. Expression de l'outil de formule:'C:/Users/JonSnow/Documents/IDExcels/ [champ d'ID]. .xlsx'+'| Sheet1 a1: J5' Résultat: C:/Users/JonSnow/Documents/IDExcels/1001.xlsx | Sheet1 $ a1: J5 Cet article montre comment faire pour importer des plages nommées Excel, mais les plages de noms sortantes utilisent les mêmes principes et étapes, mais dans l'outil de données de sortie. Parce que vous avez un fichier de modèle, la plage nommée ne doit pas changer. Pourtant, si elle ne vous pouvez modifier manuellement la plage nommée dans votre champ de chemin d'accès complet. Félicitations, vous êtes à mi-chemin! Vous disposez maintenant d'un chemin d'accès complet et d'une plage nommée associée à chaque enregistrement de votre dataset principal. Nous devons maintenant prendre ce chemin complet et le produire. Avant de faire cela, nous devons d'abord trouver les chemins d'accès complets uniques pour se nourrir dans une macro batch. Étapes simples d'abord Nous allons d'abord aller de l'avant et ajouter un outil unique après l'outil de formule dans le Workflow. Vous pouvez maintenant cocher le champ chemin d'accès complet de sorte qu'il ne nous laisse que les chemins complets uniques. Nous allons construire cette macro batch! Bien que intimidant à première vue la macro batch peut devenir votre meilleur ami très rapidement. Pour créer une macro de lot à cet effet, vous devrez copier un sous-ensemble de votre dataset principal. Pour ce faire, vous pouvez ajouter un exemple d'outil (5 premiers enregistrements) à votre DataSet et à un outil de navigation. Lorsque vous exécutez le workflow et cliquez sur l'outil parcourir, cela vous permettra de copier les champs avec en-têtes inclus. Ouvrir un nouveau Workflow Une fois que vous avez un nouveau Workflow ouvert clic droit sur la toile et appuyez sur coller. Cela va coller les enregistrements dans un outil d'entrée de texte. Vous pouvez alors cliquer avec le bouton droit sur l'outil d'entrée de texte et choisir'convertir en entrée macro'. Cela nous permettra d'alimenter notre ensemble de données principal dans la macro. Ajouter cet outil de sortie Vous pouvez maintenant joindre un outil de sortie à votre entrée de macro. Lors de la configuration de l'outil de sortie, choisissez un fichier d'espace réservé comme «écrire dans le fichier ou la base de données» (ce n'est qu'un de vos fichiers Excel nouvellement générés). Dans la section Options au-dessous de votre chaîne de fichier de sortie, sélectionnez dans la liste déroulante pour'options de sortie''écraser le fichier (Remove)'. Vous pensez peut-être que cela va supprimer votre modèle. Ne craignez pas qu'il ne va écraser n'importe quoi dans votre plage nommée spécifiée dans votre chemin d'accès complet. Voici la clé de toute l'opération! Au bas de l'outil de sortie cochez la case pour'prendre le champ/nom de la table à partir du champ', puis dans l'option déroulante, choisissez'modifier le chemin d'accès complet du fichier'. Si vous souhaitez écraser une plage de cellules, sélectionnez "remplacer la goutte", si vous cherchez au remplacement de plusieurs modèles de fichiers, s'il vous plaît sélectionnez "remplacer le fichier." En dehors d'une macro de lot cela signifierait qu'un fichier serait généré pour chaque variable unique que nous avions dans le champ choisi «nom de fichier ou une partie du nom de fichier». Malheureusement, dans cet exemple, nous ne pouvons pas le faire parce qu'il produirait un fichier pour chaque ligne de données que nous avions (chaque ligne de données ayant un chemin d'accès complet). Pour contourner ce besoin, nous devons mettre à jour la chaîne de connexion de sortie dans l'outil de sortie avec les chemins complets uniques à l'aide d'un paramètre de contrôle. Cela permettra à la macro batch de batch en fonction du chemin d'accès complet unique et de tirer toutes les données à la fois avec le même chemin de fichier dans le DataSet principal. Chemins de fichiers uniques Chemins d'accès de fichiers associés par enregistrement (ligne) Une fois que vous avez Brough le contrôle paramètre sur la toile. Faites glisser du Q vers le boulon de foudre sur le dessus de l'outil de sortie. La configuration que nous voulons choisir dans l'outil d'action est «mise à jour de la chaîne de connexion» et cliquez sur le chemin d'accès complet qui l'insère dans la zone de texte inférieure dans la fenêtre de configuration (voir ci-dessous). Vous pouvez maintenant enregistrer cette macro de lot. Vue d'ensemble de la macro batch terminée Revenons à votre workflow de DataSet principal. À la fin du workflow permet d'aller et insérer dans la macro batch (clic droit sur la toile >> macro >> sélectionnez la macro batch que vous venez de construire). Vous verrez que la macro batch a deux entrées. Le point d'interrogation dans le paramètre de contrôle et le nœud normal est l'entrée de données. Dans le nœud du paramètre de contrôle, vous devez vous alimenter dans vos chemins d'accès complets uniques et dans l'autre ancre dont vous avez besoin pour connecter le DataSet d'origine. Dans l'interface macro sur l'onglet «groupe me», vous devrez sélectionner le champ «contrôle de la zone» comme champ de chemin d'accès complet à partir de votre outil unique et le champ «Input12» doit être le champ chemin d'accès complet de votre dataset principal. Cela regroupera ensuite ces champs uniques lors de l'alimentation dans les données et les affichera en tant que groupes plutôt que des enregistrements individuels. L'onglet questions se réfère à ce que vous allez alimenter dans le paramètre de contrôle. Ce sera le champ de chemin d'accès complet unique. Tu l'as fait! Vous avez maintenant correctement construit et configuré la macro batch à écrire pour séparer les fichiers Excel dans une plage définie. Dans cet exemple particulier, les en-têtes filtrés auto ont été remplis dès que les données de Alteryx avaient été écrites avec succès dans les fichiers Excel. S'il vous plaît trouver ci-joint un exemple de workflow (construit dans Alteryx 10,5) Si vous avez des questions concernant ce processus, veuillez contacter le support. Meilleur, Jordan Barker Consultant solutions, Alteryx Inc. 10,1
Afficher l'article complet
L'organigramme des données d'entrée ultime "J'ai un bajillion fichiers que j'ai besoin d'apporter dans mon workflow ..." wayyyyyy trop nombreux pour moi d'utiliser les outils de données d'entrée individuels! Quelle est la meilleure façon de le faire? -chaque utilisateur Alteryx jamais Apporter plusieurs fichiers à la fois peut parfois sembler une tâche ardue, mais est souvent une pièce nécessaire dans le développement de ces flux de temps merveilleux d'économie. Voici un organigramme pratique pour vous aider à obtenir ces fichiers délicats sans accroc! 1. Données d'entrée avec wildcard La plupart du temps vous avez juste besoin d'un outil de données d'entrée pour obtenir vos données dedans, ce qui est grand, parce que c'est de loin la méthode la plus facile et la plus rapide ici. Exigences: Vous avez besoin de tous vos fichiers pour être dans le même répertoire. Tous les fichiers doivent être du même type (ex.) (CSV, .xlsx, yxdb) Comment le faire: Configurez un outil de données d'entrée pour introduire l'un des fichiers dans votre répertoire. Dans la chaîne de connexion, remplacez le nom de fichier (ou une partie du nom de fichier) par un astérisque (*). L'astérisque est un joker qui prend essentiellement la place de n'importe quoi. Ainsi, dans notre organigramme ci-dessus, cette chaîne de connexion se penchera dans le répertoire C:/Users/akoszycki/Desktop/Input Data/Data à l'entrée, puis ramasser tous les fichiers qui commence par "co Store fichier-" et se termine par ".xlsx". Résultats: Toutes les données de ces fichiers sont empilées les unes sur les autres, essentiellement de la même manière que l'outil Union empile les données lorsqu'il utilise l'option "auto config by Name". Si vous voulez voir le fichier à partir duquel les données proviennent, utilisez l'option "nom de fichier de sortie comme champ" dans la configuration de votre outil de données d'entrée. 2. Entrée dynamique avec des chemins de fichiers Parfois, l'univers conspire contre vous et vous ne pouvez pas utiliser un joker. Pourquoi? Eh bien peut-être qu'il est impossible d'avoir tous vos fichiers situés dans le même répertoire, ou peut-être il ya une tonne de fichiers dans le répertoire que vous ne voulez pas un joker pour ramasser. Dans ce cas, vous devrez utiliser une liste de filePaths pour alimenter une entrée dynamique. Exigences: Une liste de filePaths à importer. Un fichier pour remplir la configuration «modèle de source de données d'entrée» de l'outil d'entrée dynamique. Ce fichier doit toujours être disponible pour l'outil pour baser son schéma de champ sur, et peut être n'importe lequel des fichiers que vous souhaitez entrer. Il * ne sera pas * entrée si elle est manquante dans la liste de fichiers ci-dessus. Comment le faire: Configurez le modèle de source de données d'entrée dans l'entrée dynamique comme s'il s'agissait d'un outil de données d'entrée régulier. Cet outil inclut une option pour "lire une liste de sources de données" qui mettra à jour la chaîne de connexion en fonction de votre liste de noms de fichiers. Utilisation des tables: Certains types de fichiers nécessitent une spécification de table ou de feuille, telle que Microsoft Excel ou Access Database Files. Si la feuille ou le nom de la table va toujours être le même, vous n'aurez pas de problème avec l'outil d'entrée dynamique. Toutefois, si vos fichiers ont des tables ou des feuilles différentes que vous tirez de, vous pouvez obtenir une erreur comme ... Si cela se produit, vous devrez ajouter la table/feuille à la fin du chemin d'accès au fichier sous la forme < file path >> . Par exemple, dans l'organigramme ci-dessus, je spécifie "Sheet1" comme feuille de calcul à importer dans les fichiers Excel à l'aide d'une formule simple: [,] + "| Sheet1 $ ". 3. Macro batch avec chemins de fichiers Peu importe ce que vous faites, il semble que vous obtenez toujours ces messages embêtants qui gardent vos fichiers d'entrer. C'est à ce moment que nous faisons ressortir les grosses macros de lots de canons. Bien que cette dernière méthode est techniquement la plus intensive de travail, rappelons-nous de garder à l'esprit ce que mon bon copain Confucius dit toujours ... La macro batch exécute un workflow une fois pour chaque fichier, en mettant à jour l'outil de données d'entrée chaque fois. Il ressemblerait généralement à ceci: La macro batch sera lue automatiquement dans les fichiers qui ont le même schéma de champ sans erreurs. Mais que se passe-t-il si votre schéma de champ est différent d'un fichier à un autre? C'est là que la macro batch vient vraiment dans son propre! Accédez au mode de sortie du concepteur d'interface (voir >> interface designer), puis utilisez'auto configure by Name (attendez que toutes les itérations s'exécutent)'ou'auto configure by position (attendez que toutes les itérations soient exécutées)'. 'auto configure by Name'va syndiquer les champs avec les mêmes noms, et'auto configure by position'sera l'Union champ 1 à partir du fichier 1 en haut de la zone 1 à partir du fichier 2 pour chaque fichier. Une fois que vous avez configuré le concepteur d'interface, vous pouvez enregistrer la macro et l'insérer dans votre workflow (clic droit sur la toile >> Insert >> macros). Il existe un exemple de workflow attaché qui inclut des fichiers factices et la macro batch pour voir comment fonctionne le processus. Ce workflow a été construit dans Alteryx designer 10,5. Cela devrait le faire pour la saisie de vos données! Commentaire ci-dessous ou contacter le support client avec toutes les questions! "J'ai un bajillion fichiers que j'ai besoin d'apporter dans mon workflow ..." wayyyyyy trop nombreux pour moi d'utiliser les outils de données d'entrée individuels! Quelle est la meilleure façon de le faire? -chaque utilisateur Alteryx jamais 10,1
Afficher l'article complet
Étiquettes