Fractionner un champ en champs multiples

Si vous avez des champs de chaîne dans vos données qui contiennent plusieurs données distinctes (par exemple, le nom et prénom d’un client), vous pourrez peut-être diviser les valeurs en champs séparés.

Vous pouvez utiliser les options de fractionnement dans Tableau Desktop pour séparer les valeurs basées sur un séparateur (délimiteur) ou un modèle répété de valeurs présentes dans chaque ligne. Dans l’exemple du nom du client, le séparateur commun est un espace (" ") entre le prénom et le nom.

Trouver l’option de division

Tableau Desktop- mais pas l’édition Web dans le navigateur - comprend une option de menu pour les divisions automatiques ou personnalisées. Ils sont basés sur la fonction de chaîne DIVISER, qui peut également être utilisée manuellement dans un calcul en vue du contrôle complet de la division.

Toutes les sources de données ne prennent pas en charge la fonction DIVISER. Pour savoir si vos données prennent en charge la fonction DIVISER, vérifiez les options de menu Division et division personnalisée :

  • Dans la page Source de données, vérifiez si le menu contient Fractionnement et Fractionnement personnalisé.

  • Dans le volet Données de la feuille, vérifiez si le menu contient Transformer > Division et Division personnalisée.

    menu contextuel d’un champ dans le volet Données, affichant la division et la division personnalisée imbriquées sous l’option de transformation

Diviser sur le Web

La création Web ne prend pas en charge la division à partir d’un menu. Pour diviser des données tout en travaillant dans le navigateur, vous pouvez créer manuellement un calcul de DIVISION. Consultez les Alternatives à la division à partir du menu.

Diviser les champs

Un champ de chaîne peut être fractionné automatiquement en fonction d’un séparateur commun que Tableau détecte dans le champ. Vous pouvez également définir manuellement la division

En fonction du type de connexion, la division peut diviser les valeurs d’un champ en dix nouveaux champs maximum.

Diviser un champ automatiquement

Dans la page Source de données, dans la grille, cliquez sur la flèche déroulante à côté du nom de champ, puis sélectionnez Diviser.

Dans le volet Données, cliquez avec le bouton droit de la souris sur le champ que vous souhaitez fractionner, puis sélectionnez Transformer > Fractionnement.

Les résultats de la division sont des champs calculés standard qui peuvent être modifiés ou supprimés comme n’importe quel autre champ calculé. Le type de données des nouveaux champs générés par la division peut varier en fonction de l’association du modèle que Tableau détecte.

Diviser un champ à l’aide d’une division personnalisée

Utilisez l’option de division personnalisée pour mieux contrôler la division. Vous pouvez préciser le séparateur et choisir de diviser les valeurs aux N premières occurrences du séparateur, aux N dernières occurrences ou à toutes les occurrences.

Dans la page Source de données, dans la grille, cliquez sur la flèche déroulante à côté du nom de champ. Sélectionnez Fractionnement personnalisé.

Dans le volet Données, cliquez avec le bouton droit de la souris sur le champ que vous souhaitez diviser, puis sélectionnez Transformer > Division personnalisée.

Les nouveaux champs générés par la division personnalisée se traduisent toujours par un type de suite de données.

Remarque : Dans certains cas, si la division prend trop de temps pour générer de nouveaux champs ou que Tableau ne trouve pas de séparateur commun, une boîte de dialogue de division personnalisée s’affiche.

La division personnalisée est utile lorsque le nombre de séparateurs varie d’une valeur à l’autre. La division automatique ne peut pas être utilisée dans ces cas.

Supposons par exemple que vous disposiez d’un champ Information relative à l’employé avec les valeurs suivantes :

  • jsmith| accounting | north
  • dnguyen | humanresources
  • lscott | recruiting| west
  • karnold |recruiting |west

La division personnalisée peut être configurée de manière à effectuer la division sur la barre verticale ("|") et à diviser toutes les colonnes. Pour la valeur sans région, le troisième champ de résultat sera une valeur nulle pour cette ligne.

Boîte de dialogue Division personnalisée avec une barre verticale pour le séparateur et l’option de division de toutes les colonnes

Alternatives à la division à partir du menu

Division manuelle à l’aide de la fonction DIVISER

La fonction DIVISER fonctionne de la même manière qu’une division personnalisée, mais un seul champ de résultat est renvoyé par calcul. Vous définissez le séparateur et précisez la valeur à renvoyer en fournissant un numéro de jeton.

Par exemple, pour diviser le nom du client en prénom et nom, créez deux champs calculés :

  • Prénom : SPLIT([Customer Name], " ", 1)
  • Nom : SPLIT([Customer Name], " ", 2)

L’exemple d’informations sur l’employé (tel que « jsmith| comptabilité | nord ») utiliserait trois champs calculés :

  • Nom d’utilisateur : SPLIT([Employee Info], |, 1)
  • Service : SPLIT([Employee Info], |, 2)
  • Région : SPLIT([Employee Info], |, 3)

Pour plus d’information, consultez la section Fonction DIVISER.

Division manuelle à l’aide des fonctions GAUCHE et DROITE

Si votre cas d’utilisation consiste davantage à extraire une partie spécifique d’une chaîne qu’à la diviser en fonction d’un séparateur, vous pouvez utiliser les fonctions GAUCHE et DROITE. Ceux-ci ne renvoient qu’une partie de la chaîne en fonction d’un nombre spécifié de caractères.

Par exemple, si la valeur d’une ligne est IGW8892 :

CalculRésultat
RIGHT([Value], 4)8892
LEFT([Value], 4)IGW8
LEFT(RIGHT([Value], 2) , 1)9

Pour plus d’information, consultez GAUCHE et DROITE dans Fonctions de chaîne.

Utiliser des expressions régulières pour les champs contenant des séparateurs mixtes

Les champs ne peuvent pas être divisés automatiquement si les types de séparateurs sont différents. Par exemple, supposons qu’un champ contienne les valeurs suivantes :

  • smith.accounting
  • dnguyen-humanresources
  • lscott_recruiting
  • karnold_recruiting

Dans ces cas-là, envisagez l’utilisation d’expressions régulières pour extraire l’information souhaitée. Pour plus d’informations, consultez Fonctions supplémentaires.

Utilisation des divisions et divisions personnalisées

Quelques conseils à retenir lorsque vous utilisez des divisions et des divisions personnalisées.

  • Les nouveaux champs ne peuvent pas être utilisés en tant que clés pour lier des tables, mais peuvent être utilisés pour fusionner des sources de données.

  • Les nouveaux champs ne peuvent pas être utilisés dans un pivot.

  • Les options de division et de division personnalisée ne sont pas prises en charge par les ensembles, groupes, paramètres et classes.

  • Microsoft SQL Server ne permet que quatre divisions par champ au maximum.

  • Pour générer plus de dix nouveaux champs, envisagez de diviser plusieurs fois. Vous pouvez utiliser à nouveau la fonction de division sur un champ de la première division qui comporte encore plusieurs éléments d’information.

Résolution des problèmes de fractionnement et de fractionnement personnalisé

Problèmes que vous pourriez rencontrer lors de l’utilisation des divisions et divisions personnalisées :

  • Options de fractionnement et de fractionnement personnalisé manquantes pour un type de sources de données pris en charge : Les options de fractionnement et de fractionnement personnalisé ne sont disponibles que pour les champs contenant des chaînes.

  • Valeurs nulles : Après avoir créé une division ou une division personnalisée, les nouveaux champs peuvent contenir des valeurs nulles ou être vides. Les valeurs nulles ou les cellules vides se produisent lorsqu’il n’y a pas de valeurs pour les nouveaux champs attendus.

  • Données ont été supprimées : Il est possible que Tableau utilise les valeurs du champ en tant qu’un séparateur. Si une partie de la valeur d’un champ est utilisée comme un séparateur, cette valeur n’apparaît pas dans les nouveaux champs.

    Par exemple :

  • Valeur d’origineDiviser les valeurs de champ
    Zip-9810298102
    Zip-9810998109
    Zip-9811998199
    Zip-9819598195

    La division ne crée pas de champ séparé pour "Zip-" car toute la chaîne est utilisée comme séparateur.

Merci de vos commentaires!Votre commentaire s été envoyé avec succès. Merci!