Base de Connaissance - Français

Apprenez auprès des experts.
Nous sommes ravis de vous présenter de nouvelles ressources interactives ! Découvrez vite tout ce qui est disponible dans la version bêta de l’Academy française Alteryx !
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
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
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
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
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
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
CS macro dev: lecture dans plusieurs fichiers avec différents schéma de champ-macro batch. Lecture dans plusieurs fichiers avec différents schémas de champ Cet article fait partie de la série de développement de macro de CS. Le but de cette série est de communiquer des conseils, astuces, et le processus de pensée qui va dans le développement de bonnes macros dynamiques. L'outil de répertoire peut être très puissant lors de la lecture dans plusieurs fichiers à partir d'un dossier, soit sur votre lecteur local, soit sur l'emplacement du réseau. Une fois que vous avez la liste des chemins de fichier, vous pouvez utiliser l'outil dynamique ou créer une macro batch pour lire tous ces fichiers dans. L'entrée dynamique peut être utilisée si tous vos fichiers ont le même schéma de champ. Toutefois, si le schéma de champ diffère, vous recevrez les avertissements ci-dessous lors de l'utilisation de l'outil d'entrée dynamique pour lire les chemins de fichiers complets. Par conséquent, vous pouvez créer une macro de lot simple qui peut être utilisée de façon répétitive pour apporter plusieurs fichiers à la fois. À l'intérieur de la macro-la première étape consiste à créer votre workflow. (1) apportez un outil d'entrée et sélectionnez l'un des fichiers que vous souhaitez lire. Dans cet exemple, j'utilise des fichiers .xlsx mais vous pouvez choisir n'importe quel format de fichier que vous souhaitez lire en revanche, il devra être le même format de fichier pour tous les fichiers que vous lisez. (2) ajoutez un paramètre de contrôle au-dessus de votre outil d'entrée. Cela vous permet de passer un chemin de fichier à la fois de l'extérieur de votre macro. Il n'y a aucune configuration requise sur cet outil. (3) faites glisser le'Q'du paramètre de commande vers le bas dans le boulon de foudre de l'outil d'entrée. Cela va ajouter dans un outil d'action. Dans l'outil action, mettez en surbrillance le chemin d'accès du fichier dans la fenêtre de configuration. Cela va maintenant l'ajouter dans l'option'remplacer une chaîne spécifique'au bas de la fenêtre de configuration. Tout cela signifie que la valeur que vous passez à travers votre paramètre de contrôle sera le remplacer dans l'outil d'entrée. (4) ajouter une sortie macro à l'outil d'entrée. Cela permettra aux données de sortir de la macro de nouveau dans votre workflow d'origine. Maintenant obtenu de voir >> interface Designer (ID) et cliquez sur l'icône clé dans la fenêtre d'identification. Dans le mode de sortie, modifiez l'option: -Auto configurez par nom (attendez que toutes les itérations s'exécutent)-auto configurer par nom va syndiquer les champs avec les mêmes noms -Auto configurer par position (attendre jusqu'à ce que toutes les itérations exécuter)-auto configurer par position sera Union Field 1, etc dans la même position pour chaque fichier lu po Cela va maintenant supprimer les avertissements que vous obteniez avec l'entrée dynamique. Insertion de la macro dans votre workflow (1) fichier >> enregistrer sous-enregistrer la macro dans un endroit où vous pouvez y accéder. Alteryx saura qu'il s'agit d'un workflow de macros parce que vous avez ajouté un paramètre de contrôle, ainsi qu'une sortie de macro. (2) dans une nouvelle toile, vous pouvez alors faire un clic droit sur la toile >> insérer >> macro). (3) si vous lisez dans une liste de fichiers, vous pouvez ensuite utiliser l'outil répertoire pour accéder au dossier avec les fichiers. (4) comme il s'agit d'un exemple de .xlsx, je vais devoir ajouter le nom de la feuille pour chacun des fichiers. Si vous lisez dans un type de fichier différent, vous n'aurez pas à faire cette étape. (5) vous pouvez ensuite configurer le paramètre de contrôle et sélectionner'chemin complet'. Joint est un exemple de workflow (version 11,0) que vous pouvez utiliser comme modèle pour générer. Si vous souhaitez construire une macro batch il ya une excellente vidéo sur notre demande de formation page Web: http://www.alteryx.com/on-demand-Training * Bien que cette macro a été testé, il peut ne pas fonctionner dans tous les scénarios. S'il vous plaît commenter sur le fil et je serais heureux d'aider. Meilleur, Jordan Barker Représentant du service à la clientèle 10,1
Afficher l'article complet
Téléchargement du protocole FTP (File Transfer Protocol) Vous devez télécharger un fichier à partir du protocole FTP (File Transfer Protocol) dans un workflow de concepteur? Les étapes de workflow et de configuration de v 10.1 jointes nécessaires pour vous mettre en place sont en dessous! 1. Mettez à jour votre champ URL dans le premier outil d'entrée de texte pour que l'extension URL/nom de fichier FTP soit correcte. Mettez également à jour votre téléchargement sur le terrain pour pointer vers votre directory/filename.extension désiré: Si le téléchargement vers le répertoire est laissé comme. /, le fichier sera téléchargé dans le répertoire dans lequel l'exemple de workflow a été enregistré. 2. Mettre à jour les informations d'identification du site FTP dans l'onglet Connexion de l'outil de téléchargement: Les autres onglets de l'outil de téléchargement sont déjà configurés. Ils font usage de la charge utile http action get (ou FTP) (a) et spécifier l'URL FTP, ainsi que le nom de fichier à télécharger à (b). un) b) 3. Mettez à jour le nom de fichier de votre outil d'entrée pour rechercher le même nom de fichier utilisé dans votre téléchargement sur le champ à partir de l'étape 1: Voilà! Vous devriez télécharger votre fichier FTP avec succès dans votre répertoire prévu et l'ouvrir pour l'utiliser dans votre workflow. Comme toujours, si vous rencontrez des problèmes n'hésitez pas à contacter notre équipe de support client à support@alteryx.com! Vous voulez en savoir plus sur les outils de téléchargement ou de saisie de texte? Essayez les liens ci-dessous: http://help.alteryx.com/current/index.htm#Download.htm http://help.alteryx.com/current/index.htm#TextInput.htm Matthieu D 10,1
Afficher l'article complet
Effectuer une analyse de régression à l'aide du concepteur Alteryx L'analyse de régression est largement utilisée pour la prédiction et la prévision. Les clients de Alteryx utilisent ces outils statistiques pour comprendre le risque, la fraude, la fidélisation et la tarification des clients, entre autres besoins de l'entreprise. L'analyse de régression est un processus statistique permettant d'estimer les relations entre les variables. La raison courante d'utiliser cet outil est de déterminer un effet causal d'une variable sur une autre, comme l'effet d'une augmentation de prix sur demande, par exemple, l'effet d'une habitude du tabac sur la probabilité d'un individu d'être diagnostiqué avec le cancer du poumon. L'analyse de régression est composée d'une variété d'outils dans Alteryx, qui font partie de la licence Alteryx designer standard. Cette vidéo fournit un bref didacticiel sur l'utilisation des outils d'analyse de régression sur les stats de baseball des ligues majeures et comprend une vue d'ensemble sur la façon de configurer les outils suivants: Outil d'analyse d'association Outil de régression linéaire Outil par étapes Outil de test imbriqué Outil de score &amp;amp;amp;amp;lt;a href="&amp;lt;a href="https://cdn.embedly.com/widgets/media.html?src=https%3A%2F%2Fwww.youtube.com%2Fembed%2F7AvidkIPcbY%3Ffeature%3Doembed%26;url=http%3A%2F%2Fwww.youtube.com%2Fwatch%3Fv%3D7AvidkIPcbY%26;image=https%3A%2F%2Fi.ytimg.com%2Fvi%2F7AvidkIPcbY%2Fhqdefault.jpg%26;key=fad07bfa4bd747d3bdea27e17b533c0e%26;type=text%2Fhtml%26;schema=youtube&amp;amp;amp;amp;amp;lt;/A" target="_blank"&amp;gt;https://cdn.embedly.com/widgets/media.html?src=https%3A%2F%2Fwww.youtube.com%2Fembed%2F7AvidkIPcbY%3Ffeature%3Doembed%26;url=http%3A%2F%2Fwww.youtube.com%2Fwatch%3Fv%3D7AvidkIPcbY%26;image=https%3A%2F%2Fi.ytimg.com%2Fvi%2F7AvidkIPcbY%2Fhqdefault.jpg%26;key=fad07bfa4bd747d3bdea27e17b533c0e%26;type=text%2Fhtml%26;schema=youtube&amp;amp;amp;amp;amp;lt;/A&amp;lt;/a&amp;gt;" target="_blank"&amp;amp;amp;amp;gt;&amp;lt;a href="https://cdn.embedly.com/widgets/media.html?src=https%3A%2F%2Fwww.youtube.com%2Fembed%2F7AvidkIPcbY%3Ffeature%3Doembed%26;url=http%3A%2F%2Fwww.youtube.com%2Fwatch%3Fv%3D7AvidkIPcbY%26;image=https%3A%2F%2Fi.ytimg.com%2Fvi%2F7AvidkIPcbY%2Fhqdefault.jpg%26;key=fad07bfa4bd747d3bdea27e17b533c0e%26;type=text%2Fhtml%26;schema=youtube&amp;amp;amp;amp;amp;lt;/A&amp;amp;amp;amp;lt;/a&amp;amp;amp;amp;gt;&amp;amp;amp;amp;amp;gt" target="_blank"&amp;gt;https://cdn.embedly.com/widgets/media.html?src=https%3A%2F%2Fwww.youtube.com%2Fembed%2F7AvidkIPcbY%3Ffeature%3Doembed%26;url=http%3A%2F%2Fwww.youtube.com%2Fwatch%3Fv%3D7AvidkIPcbY%26;image=https%3A%2F%2Fi.ytimg.com%2Fvi%2F7AvidkIPcbY%2Fhqdefault.jpg%26;key=fad07bfa4bd747d3bdea27e17b533c0e%26;type=text%2Fhtml%26;schema=youtube&amp;amp;amp;amp;amp;lt;/A&amp;amp;amp;amp;lt;/a&amp;amp;amp;amp;gt;&amp;amp;amp;amp;amp;gt&amp;lt;/a&amp;gt;;" width="600" height="337" scrolling="no" frameborder="0" allowfullscreen=""&amp;amp;amp;amp;amp;gt; Les clients de Alteryx utilisent les analyses prédictives pour identifier les modèles trouvés dans les données historiques et transactionnelles pour identifier les risques ainsi que les opportunités. Alteryx outils d'analyse prédictive sont construits sur Open source R. Les utilisateurs de Alteryx ne sont pas tenus de connaître R pour exécuter des modèles prédictifs parce que tous les modèles de Alteryx sont empaquetés dans des outils macro faciles à utiliser qui nécessitent uniquement une configuration. Tous les outils prédictifs sont des macros, et donc pas une «boîte noire». Les macros fournissent à l'utilisateur la possibilité d'ouvrir tous les modèles et de disséquer la logique, ainsi que de voir et de modifier le ou les scripts R en cours d'exécution. 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
Étiquettes