Free Trial

Base de Connaissance

Apprenez auprès des experts.
TIPS de la semaine

Chaque semaine, découvrez de nouvelles astuces et bonnes pratiques pour devenir un expert !

Voir l'index
L'outil Regex est un peu comme le couteau suisse de l'armée d'analyse dans Alteryx ; il y a beaucoup de façons dont 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. 
Afficher l'article complet
Cet article fait partie de la série Maîtrise de l'outil, une compilation de contributions à la Base de connaissances visant à présenter divers exemples d'utilisation des outils Designer. Ici, nous allons vous introduire les ressources application et macro dans le cadre de notre apprentissage de la maîtrise d'Alteryx Designer.
Afficher l'article complet
Cet article fait partie de la série Maîtrise des outils, une compilation de contributions à la Base de connaissances visant à présenter divers exemples d'utilisation des outils Designer. Ici, nous allons nous pencher sur les utilisations de l'outil Correspondance partielle dans le cadre de notre apprentissage de la maîtrise d'Alteryx Designer :   Similaire à la recherche partielle d'Excel, l'outil Correspondance partielle (admirez-le en pleine action ici) facilite la mise en correspondance inexacte des données. En spécifiant des seuils de similarité, en utilisant différents algorithmes de correspondance et en définissant d'autres options de configuration, vous pouvez personnaliser l'outil afin qu'il s'adapte au mieux à votre jeu de données. Du fait du haut degré de personnalisation de l'outil, nous recommandons d'évoluer progressivement en visionnant nos vidéos de formation interactive  de niveau initiation et intermédiaires si vous envisagez d'utiliser des applications plus complexes de l'outil. Nous vous proposons également une Foire aux questions et des Conseils et astuces en matière de correspondance partielle qui peuvent également vous faciliter l'utilisation de l'outil !   Dans la vie, peu de choses sont complètement claires et précises, noir sur blanc. Dans tous les domaines, il existe des zones intermédiaires, et les lignes qui séparent les choses les unes des autres peuvent être partielles. Il en est de même pour les données, en particulier quand elles sont saisies manuellement. C'est pourquoi nous avons conçu l'outil Correspondance partielle : si vos données ne sont pas claires comme de l'eau de roche, vous pouvez tout de même tirer parti de vos enregistrements en les mettant en correspondance avec quelque chose d'un peu plus standardisé. Une opération qui peut s'avérer utile dans les cas suivants :    Suppression des données dupliquées d'un seul jeu de données contenant des enregistrements en double (exemple ci-joint dans Fuzzy Match.yxmd) :     Fusion de deux jeux de données et identification des enregistrements redondants (exemple ci-joint dans Fuzzy Match.yxmd)  : Remarque  : Il est vivement recommandé de commencer par purger (dédupliquer) chacun de vos jeux de données à fusionner avant de les utiliser en mode fusion afin d'éliminer toutes les correspondances redondantes et accélérer ainsi considérablement le processus de mise en correspondance.     Comparaison et nettoyage des chaînes, et mise en correspondance avec des mots-clés   Ces techniques vous aideront à identifier les noms, adresses et numéros de téléphone similaires, voire les fautes d'orthographe dans vos données, afin de transformer les chaînes inexactes en analyses exactes !   Si vous manipulez spécifiquement des noms, assurez-vous de consulter notre Guide sur la mise en correspondance partielle des surnoms. Si vous devez diminuer le seuil de correspondance au point où la mise en correspondance de certaines chaînes devient incorrecte, mais que d’autres chaînes ne correspondent pas, tentez de « mettre en cascade » le processus de mise en correspondance à l'aide d'un autre outil Correspondance partielle uniquement pour les chaînes qui ont besoin d’un seuil de correspondance inférieur, puis utilisez l’outil Union pour les fusionner avec le premier jeu.   Maintenant, vous devriez être un(e) expert(e) de l'outil Correspondance partielle ! Si vous pensez à un cas d'utilisation que nous avons oublié, n'hésitez pas à utiliser la section commentaires ci-dessous !    Vous souhaitez maintenant contribuer au blog de la communauté en partageant vos expériences et en apprenant à utiliser nos nouveaux outils dans votre vie quotidienne, envoyez moi un e-mail à Stephanie.jansen@alteryx.com.   Si vous avez des questions, la communauté est là pour y répondre sur le Forum.    Restez à l'écoute de nos dernières publications en vous abonnant aux notifications par email sur la Base de Connaissance.    *Cet article a été écrit par @MattD sur la Communauté anglaise. 
Afficher l'article complet
Cet article fait partie de la série Maîtrise des outils, une compilation de contributions à la Base de connaissances visant à présenter divers exemples d'utilisation des outils Designer. Ici, nous allons nous pencher sur les utilisations de l'outil Formule à plusieurs lignes dans le cadre de notre apprentissage de la maîtrise d'Alteryx Designer  :   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 pensez à un cas d'utilisation que nous avons oublié, n'hésitez pas à utiliser la section commentaires ci-dessous !    Vous souhaitez maintenant contribuer au blog de la communauté en partageant vos expériences et en apprenant à utiliser nos nouveaux outils dans votre vie quotidienne, envoyez moi un e-mail à Stephanie.jansen@alteryx.com.   Si vous avez des questions, la communauté est là pour y répondre sur le Forum.    Restez à l'écoute de nos dernières publications en vous abonnant aux notifications par email sur la Base de Connaissance.    *Cet article a été écrit par @Kenda sur la Communauté anglaise. 
Afficher l'article complet
Un aspect important des processus d'analyse de données souvent demandé, lorsque l'on travaille dans un cadre réglementé, est de conserver la traçabilité des changements. Ceci est souvent très difficile à réaliser mais avec Alteryx, tout devient possible !!!   1) La première chose à faire est de générer une documentation du Workflow. Pour rappel l'article suivant décrit comment générer une documentation .pdf à partir d'un fichier workflow: https://community.alteryx.com/t5/Base-de-Connaissance-Francais/Generer-automatiquement-une-documentation-de-son-workflow/ta-p/420880   2) La seconde chose à faire est de planifier l'application de génération de rapport sur Alteryx Server afin de générer automatiquement une documentation pour tous les Workflows de l'entreprise. Cette opération peut être effectuée en modifiant légèrement l'application de documentation pour prendre un ensemble de fichier de Workflow en entrée et produire ainsi de manière automatique les documentations (en planifiant la nuit par exemple).   3) Enfin, un simple outil de comparaison de fichier .pdf permettra d'identifier les changements entre deux versions de workflow (ie deux versions de documentation). Par exemple le logiciel Acrobat possède cette fonction, il en existe aussi d'autres en ligne et gratuits.     Les modifications apportées apparaissent par la suite et sont très facilement identifiables comme le montre la capture ci-dessous.   Un exemple complet se trouve à cette adresse.   Pour plus d'information sur une mise en œuvre éventuelle, n'hésitez pas à nous contacter.
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
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
Produit cartésien Join/cartésien Question Comment puis-je créer une jointure cartésienne de mes données? Réponse Une jointure cartésienne, également connue sous le nom de produit cartésien, est une jointure de chaque ligne d'une table à chaque ligne d'une autre table. Par exemple, si la table a a 100 lignes et est jointe à la table B, qui a 1 000 lignes, une jointure cartésienne se traduira par 100 000 lignes. Ce type de jointure peut être utile lorsque vous devez produire un DataSet qui contient toutes les combinaisons de deux tables ou plus. Vous pouvez continuer à ajouter à la jointure en ajoutant d'autres outils d'ajout. Il suffit de connecter la sortie du premier outil Append à l'entrée cible d'un deuxième outil Append et de connecter la troisième table à l'entrée source du deuxième outil Append. Poursuivez cette configuration pour autant de tables que nécessaire. Dans l'exemple ci-dessous, un concessionnaire de voiture avait besoin d'une liste de chaque combinaison de modèle, couleur extérieure, couleur intérieure et paquet d'options. Voici ce que les quatre table cartésienne Join ressemble à: Les tableaux contiennent les données suivantes: Un échantillon des résultats du workflow illustré ci-dessus ressemble à ceci: Important Par défaut, l'outil Append est défini sur erreur sur plus de 16 ajouts afin de protéger l'utilisateur de produire par inadvertance une quantité étendue d'enregistrements. Si vos données ont plus d'ajouts que cela, vous pouvez modifier ce paramètre comme indiqué ci-dessous pour autoriser tous les ajouts: Ce workflow, créé en 10,6, est joint. Merci! 10,6
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
Création de valeurs NULL dans les données Dans le traitement et le formatage de vos données, vous pouvez décider que certains enregistrements doivent être classés en tant que valeurs NULL. Plutôt que de remplir des champs numériques avec un 0 ou de laisser un champ vide (''), une valeur NULL peut être la meilleure option pour analyser et stocker vos données. Dans cet exemple particulier, imaginons que nous avons des ID de client et les numéros de téléphone qui leur sont associés. Certains numéros de téléphone peuvent être incomplets ou détypés. Après suppression de la ponctuation avec l'outil de nettoyage des données, nous allons chercher des numéros de téléphone valides-ceux composés de 10 chiffres-pour stocker dans notre base de données client. Pour identifier nos résultats valides, nous allons appliquer une déclaration conditionnelle: si un numéro de téléphone n'est pas de 10 chiffres de long, alors l'enregistrement est null; sinon (sinon) utilisez le numéro de téléphone dans nos données. L'expression utilisée pour assigner une valeur null se trouve dans les fonctions spécialisées de l'outil de formule: À la suite de l'expression ci-dessus, les deux numéros de téléphone qui sont soit un chiffre trop court (9 chiffres de longueur) ou un chiffre trop long (11 chiffres de longueur) ont été exprimés comme NULL: Expression
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
Conversion de chaînes en nombres Parfois, un DataSet contiendra des numéros stockés sous forme de texte. J'ai l'ordre de faire des calculs à l'aide de ces chiffres, le type de données doit être converrted à une donnée numérique. Si les données sont propres, la modification du type de données dans un outil SELECT peut faire l'affaire. Une autre option consiste à utiliser la fonction Convert.ToNumber dans un outil de formule ou un outil de formule de champ multiple (si vous avez plusieurs champs à convertir). Convert.ToNumber (x, bIgnoreErrors, keepNulls) x: la colonne que vous convertissez en nombre bIgnoreErrors et keelNulls sont des paramètres optionnels. bIgnoreErrors: 0 ou false (par défaut) signifie qu'il signale des messages d'erreur de conversion; 1 ou true signifie qu'il ignorera les erreurs de conversion. keepNulls: 0 ou false (par défaut) signifie qu'il va convertir des valeurs non numériques (y compris null) à zéro; 1 ou true signifie qu'il va convertir des valeurs non numériques à null. Cette option peut être très utile si vous souhaitez traiter les valeurs NULL différemment de zéro dans votre DataSet. Maintenant, que faire si vos données sont salissantes? Que se passe-t-il si les utilisateurs ajoutent des zéros de tête, des symboles monétaires, etc.? Vous pouvez utiliser l'outil formule pour nettoyer vos données avant de les convertir en nombres. Fonctions que vous pouvez utiliser pour nettoyer les données: REPLACECHAR (x, y, z): renvoie la chaîne [x] après avoir remplacé chaque occurrence du caractère [y] par le caractère [z]. REGEX_REPLACE (String, pattern, Replace, iCase): permet le remplacement du texte à l'aide d'expressions régulières et retourne la chaîne résultant du modèle de recherche Regex et remplacez la chaîne. Consultez la page de syntaxe de Boost Regex perl Regular expression pour rendre le bâtiment de l'expression plus facile. Le paramètre replace peut être soit une valeur spécifiée, comme indiqué ci-dessous, soit un groupe marqué, tel que «$ 1» iCase est un paramètre facultatif. Lorsqu'il est spécifié, le cas doit correspondre. Par défaut iCase = 1 signifiant ignorer la casse. Si la valeur 0, le cas doit correspondre. Trim (x, y): supprimez le ou les caractères de la chaîne y à partir des extrémités de la chaîne x. Y est optionnel et par défaut pour rogner l'espace blanc. Avis dans la fonction Trim exemples les caractères spécifiés sont tronqués. Peu importe l'ordre dans lequel les personnages sont. Consultez également le workflow attaché pour obtenir des exemples d'utilisation de l'outil de formule pour nettoyer les données avant de les convertir en nombre. 10,5
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
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
Arrêter le workflow sur une condition Parfois, vous pouvez vouloir arrêter un Workflow si certaines conditions sont remplies! Heureusement dans Alteryx nous avons la combinaison de l'outil de test et les propriétés de workflow pour arrêter le Workflow. Un cas d'utilisation courante est que vous avez planifié le workflow avec un fichier d'entrée qui est mis à jour chaque semaine, mais parfois il n'y a pas de nouvelles données. Vous souhaitez arrêter le flux de travail en sortant et en écrasant votre fichier de sortie s'il y a zéro enregistrements dans le Workflow. Dans ce cas particulier d'utilisation, vous voudrez ajouter un outil de comptage et de test avant votre outil de sortie pour vous assurer qu'aucun enregistrement ne passe à l'outil de sortie. L'ajout d'un outil de comptage vous donnera la valeur dont vous avez besoin pour voir si des enregistrements sont présents dans le Workflow. Si le nombre est 0, cela signifie qu'il n'y a pas d'enregistrements présents, si elle plus grande que cela il ya des enregistrements présents et vous souhaitez que le workflow de continuer comme prévu. Lorsque vous fixez l'outil de test à l'outil comptage, vous devez appuyer sur le bouton'Add'pour créer un scénario de test. Lorsque vous appuyez sur Ajouter il apparaîtra une autre fenêtre. Dans cette fenêtre, vous pouvez entrer votre nom de test qui sera renseigné dans le journal des erreurs de fenêtre de résultats. La connexion d'entrée est le flux de données. Et le type de test reflète le type de test que vous souhaitez appliquer. Dans cet exemple particulier, nous allons utiliser'expression est vraie pour tous les enregistrements'. Le champ valeur de test vous donnera une fenêtre similaire à l'outil de formule. Ici, vous pouvez créer votre expression. L'outil de test fonctionne lorsqu'une condition spécifiée par l'utilisateur n'est pas remplie. Par conséquent, dans ce cas particulier, je suis à la recherche d'aucune donnée afin d'avoir compter moins de 0 sera l'erreur quand il n'y a pas de données disponibles. Une fois que vous avez configuré l'outil de test et l'avez attaché dans le Workflow. Vous devez cliquer sur le canevas et naviguer jusqu'à'Runtime'dans la fenêtre de configuration. Ici, il ya une liste de cases à cocher, vous aurez à cocher "annuler workflow sur l'erreur". Cela fonctionnera en tandem avec l'outil de test pour annuler le workflow lorsque l'erreur est générée. Voici une capture d'écran de l'exemple de Workflow. J'ai également joint l'exemple de workflow! (construit en Alteryx Desginer 10,1) Meilleur, Jordan Barker Consultant solutions 10,1
Afficher l'article complet
Tout sur les constantes Vous travaillez sur votre outil de formule millionième et "Jeff" de Quality assurance vous envoie un e-mail que la marge d'erreur de votre processus a été renormalisée. Ce n'est plus 0,122, mais 0,121. Puis la réalité horrible se met en-vous allez devoir revenir à travers toutes vos formules et mettre à jour que l'on.. stupide. peu. nombre. Vous jurez que vous ne serez plus jamais laisser béat "Jeff" ruiner votre nuit avec ses normes de tolérance nitpicky, si vous ouvrez votre navigateur, charger votre page d'accueil (la page de la communauté Alteryx duh), et de trouver exactement ce que vous avez été à la recherche d': un article de base de connaissances sur constantes de document. Alors qu'est-ce qu'une constante? Selon les pages d'aide de Alteryx: «les constantes de document sont des variables globales pour un Workflow.» (les constantes permettent de modifier une valeur dans un emplacement unique et ont cette modification se propager au reste du Workflow.) Vous pouvez trouver des constantes dans l'onglet Propriétés de votre workflow (cliquez sur le canevas et accédez au workflow dans la fenêtre de configuration). La case "est numérique" à l'extrême droite fera la valeur numérique plutôt qu'une chaîne. Types de constantes Moteur Ces quatre constantes de moteur apparaîtront dans chaque workflow, et une constante supplémentaire,,, apparaît là quand vous créez une macro d'optimiseur de lot, itératif ou d'emplacement. Temp chemin de fichier: le répertoire où le moteur va écrire des fichiers temporaires. Version: le numéro de version du moteur Alteryx installé sur la machine. Répertoire du workflow: répertoire du workflow en cours. Si aucun workflow n'est ouvert, la valeur sera le répertoire d'installation de Alteryx. GuiInteraction: valeur booléenne indiquant si un workflow est exécuté à partir de l'interface graphique. Lorsqu'un workflow est exécuté à partir du concepteur Alteryx ou de l'interface d'application analytique, la valeur retournée est true ou 1. Lorsqu'un workflow est exécuté à partir de la ligne de commande, la valeur retournée est false ou 0. ,: un entier qui correspond au nombre de fois qu'une macro a été exécutée, à partir de 0. Utilisateur Cliquer sur le symbole vous permettra d'ajouter des constantes utilisateur. Dans la capture d'écran ci-dessus, j'ai ajouté un "numéro favori" constante de l'utilisateur. Il peut s'agir de chaînes ou de chiffres, et s'en tenir au workflow si vous l'envoyez, le planifiez ou le téléchargez dans une galerie. Question Si vous faites une application ou une macro, beaucoup de vos outils d'interface apparaîtront comme des constantes de question. Le nom de cette constante correspond au nom de l'outil dans la zone d'annotation des propriétés de l'outil. Comment utiliser les constantes Méthode de formule Vous pouvez apporter une constante dans n'importe quel outil avec un composant de processeur de formule, tel que dans les outils de formule, de filtre et de renommer dynamique. Les constantes moteur et utilisateur seront renseignées dans le menu constantes des variables. Ils viendront en tant que Numeric ou chaîne basée sur si c'est la case numérique est cochée. Les constantes de question ne s'affichent pas dans ce menu, et ne peuvent pas être tapées dans [...] notation comme les autres variables. Raccourci de référence Toute constante (question incluse) peut être appelée sur n'importe quelle option de configuration à l'aide d'un raccourci de référence. Cela peut ne pas toujours fonctionner exactement comme vous pensez qu'il sera, donc utiliser cette méthode avec prudence. Généralement, dans toute configuration dans laquelle vous pouvez taper, vous pouvez apporter une constante en utilisant le type de notation% ConstantName%. Par exemple, dans notre outil de formule, nous pourrions nous référer à cette constante de question dans notre éditeur d'expression. Note nous avons encore eu à le placer dans les guillemets, parce que ceux-ci ne viennent pas avec notre valeur constante. En utilisant le raccourci de référence, nous pouvons transmettre des données sans même connecter l'outil d'interface à la formule. Ci-dessus, nous avons une macro avec la zone de texte nommée «constante», et ci-dessous est le résultat lors de l'exécution dans un autre Workflow. Consultez l'exemple ci-joint pour voir tout cela en action! (compilé dans la version 10,1, testé en 10,5) Vous travaillez sur votre outil de formule millionième et "Jeff" de Quality assurance vous envoie un e-mail que la marge d'erreur de votre processus a été renormalisée. Ce n'est plus 0,122, mais 0,121. Puis la réalité horrible se met en-vous allez devoir revenir à travers toutes vos formules et mettre à jour que l'on.. stupide. peu. nombre. 10,0
Afficher l'article complet
Applications analytiques chaînées Alteryx Alteryx applications analytiques (Apps) sont très utiles. Ils nous permettent de prendre un processus, paramétrer des parties de celui-ci, et ajouter une interface afin que les utilisateurs finaux n'ont pas besoin de connaître tous les rouages du processus afin de le faire fonctionner pour leur scénario spécifique. Nous pouvons même prendre un $ $ etAPP et le publier à une galerie de Alteryx ainsi le processus peut être partagé avec quelqu'un qui n'a même pas Alteryx installé sur leur machine. Une question commune que nous entendons des constructeurs de $ $ etAPP est, «comment faire les choix présentés pour une question d'interface dépendent d'une question d'interface précédemment répondue?». Ceci est principalement accompli en enchainant plusieurs apps ensemble de sorte que les résultats de l'application #1 fournissent dynamiquement les options pour une question déroulante ou de ListBox dans l'application #2. L'étape 1 et l'étape 2 du paquet ci-joint fournissent un exemple. Que faire si la question que vous souhaitez mettre à jour n'est pas une liste déroulante ou ListBox? Vous pouvez réellement employer l'application #1 pour mettre à jour dynamiquement le XML brut contrôlant la question (ou n'importe quel outil) dans l'application #2 avant de présenter les questions de l'application #2 à l'utilisateur. L'étape 2 et l'étape 3 du paquet ci-joint fournissent un exemple. Moins souvent, on nous demande comment nous pouvons créer ce que j'aime appeler une «boucle de rétroaction» dans l'interface. Cela implique l'utilisateur de l'application remplissant un ensemble de questions, en voyant certains résultats de ces questions, et de décider s'il faut continuer à avancer ou revenir à modifier leurs sélections initiales. Ceci peut être accompli en utilisant la même idée de modifier le XML pour décider dynamiquement quel $ $ etAPP devient le prochain lien de la chaîne dans un processus. L'étape 3 dans le paquet ci-joint est un exemple qui sera soit passer à une véritable étape 4 si l'utilisateur est heureux avec les résultats des étapes 1-3 ou sera en boucle de retour à l'étape 2 afin que l'utilisateur peut modifier leurs sélections initiales. Ils peuvent continuer dans la boucle, en modifiant leurs sélections à l'étape 2 encore et encore jusqu'à ce qu'ils soient satisfaits des résultats et choisissent de passer à l'étape 4. Le package joint (créé à l'aide de Alteryx 10) contient un exemple pour chacune de ces options avec quelques notes appelant les différents exemples. Veuillez noter que les deux options impliquant la modification du XML d'un $ $ etAPP ne fonctionneront pas dans une galerie de Alteryx parce que n'importe quelle application exécutée par la Galerie doit être vérifiée par le serveur à l'avance et il n'y a aucun moyen de construire cette étape de vérification dans l'application. 10,0
Afficher l'article complet
Est-ce qu'Alteryx peut analyser un document Word ou un PDF? Une des principales raisons pour lesquelles les gens aiment Alteryx, est la possibilité de lire un grand nombre de source de données différentes. Une limitation est qu'il ne peut pas lire dans un PDF ou un document Word sans l'aide d'une autre source. Pourquoi vouloir faire cela ? Un parfait exemple serait d'analyser un dossier rempli de CV à la recherche d'un texte spécifique. Pourquoi Alteryx ne peut-il pas lire ces formats nativement ? Il ne s'agit pas de format standard, donc afin de les lire, nous devons d'abord les convertir en texte brut. Pour la conversion, il existe un programme gratuit, open source, appelé DocToText. Ce programme peut être exécuté à partir de la ligne de commande pour convertir ces types de fichiers en texte brut, lisible par Alteryx sans problème. J'ai attaché un exemple à ce poste. Ce module utilise un outil souvent sous-utilisé, l'outil exécuter une commande. Avec l'aide de cet outil, nous pouvons lire dans une liste de fichiers à partir d'un dossier source spécifique, analyser les informations dans un format utilisable par DocToText, puis convertir les fichers en texte via l'outil exécutez une commande. J'ai inclus tout ce dont vous aurez besoin dans la pièce jointe (y compris un exemple de fichier PDF et l'exécutable). Téléchargez et ouvrez le fichier yxzp ci-joint, consultez le module, et faites-nous savoir ce que vous pensez ! Vous remarquerez que le paquet produira des erreurs de dépendance de couple lors de l'ouverture. C'est normal! Il n'y aura pas d'erreur lors de l'exécution. Un merci spécial à Maureen Wolfson pour l'application de base et les suggestions ! A bientôt ! ~ Chad Suivez-moi sur Twitter! @AlteryxChad 10,0
Afficher l'article complet
Étiquettes