Comment analyser une liste d'objets JSON pour séparer les colonnes ?J'essaie d'importer les données suivantes dans JMP mais tous les objets de données externes se retrouvent dans la même colonne. Existe-t-il un moyen de l'obtenir dans des colonnes séparées ? Je le fais fonctionner avec des valeurs numériques mais pas avec des chaînes. Toutes les chaînes se retrouvent dans les mêmes colonnes avec des valeurs séparées par des virgules. Merci pour votre aide.
[{
"id": 1234,
"date": "2022-04-06",
"batch": {
"id": 1553,
"date": "2022-02-01"
},
"externalData": [
{
"orderNumber": 1,
"batchNumber": "bo09",
"partNumber": 121
},
{
"orderNumber": 1,
"batchNumber": "hoi112",
"partNumber": 129
},
{
"orderNumber": 1,
"batchNumber": "1ka10",
"partNumber": 432
} ,
{
"orderNumber": 1,
"batchNumber": "11la0",
"partNumber": 432
}
]
},{
"id": 1234,
"date": "2022-04-06",
"batch": {
"id": "1553",
"date": "2022-02-01"
},
"externalData": [
{
"orderNumber": 1,
"batchNumber": "14",
"partNumber": 121
},
{
"orderNumber": 1,
"batchNumber": "112",
"partNumber": 129
},
{
"orderNumber": 1,
"batchNumber": "110",
"partNumber": 432
}
]
}]Modélisation statistique avancéeAccès aux donnéesRe : Comment analyser une liste d'objets JSON pour séparer les colonnes ?Écrire des formules distinctes pour chacun des résultats est une option

Parse JSON(:Column 1[1])["res1"];
Cela peut également être scripté pour être plus automatique
Re : Comment analyser une liste d'objets JSON pour séparer les colonnes ?Si mes données JSON ne sont pas un fichier mais une colonne dans une table de données existante, comment puis-je analyser le JSON en colonnes distinctes ? Dans l'exemple de capture d'écran ci-dessous, je souhaite analyser la colonne « résultats » en 3 colonnes distinctes : résultat1, résultat2, résultat3.

Re : Comment analyser une liste d'objets JSON pour séparer les colonnes ?Selon l'apparence souhaitée des données, il se peut que l'assistant JSON ne puisse pas les formater comme vous le souhaitez.
Assistant d'importation JSON avec Huge Guess (Wide fonctionnera très probablement également) :

Ensuite, vous pouvez séparer batchNumber en différentes colonnes :

Ou en utilisant des paramètres de l'assistant d'importation JSON un peu plus compliqués :

Et à partir de là, vous pouvez utiliser différents outils proposés par JMP pour diviser/empiler/transposer les données.
Vous pouvez également laisser batch.id avec des valeurs vides et l'utiliser pour calculer l'index de la liste

If(Row() == 1, val = 0);
If(Is Missing(:batch.id),
val,
val
++);
val;
Re : Comment analyser une liste d'objets JSON pour séparer les colonnes ?Merci pour votre réponse! J'ai essayé les différentes options de l'assistant d'importation mais j'aimerais séparer la liste en différentes colonnes et non en lignes comme dans votre solution. Y-a-t-il un moyen de faire ça?
Re : Comment analyser une liste d'objets JSON pour séparer les colonnes ?Avez-vous essayé les différentes options proposées par l'assistant d'importation JSON ? Voici par exemple Wide Guess avec Stack activé :

À quoi voulez-vous que les données ressemblent ?
Re : Comment analyser une liste d'objets JSON pour séparer les colonnes ?Salut @Lovisa ,
Selon la version de JMP que vous utilisez, vous pouvez importer le fichier JSON directement dans JMP à l'aide de la commande File Open.
Import JSON File-->OpenImport JSON File-->OpenImporter un fichier JSON -> Ouvrir
Import JSON Red Triangle Option Tall FormatImport JSON Red Triangle Option Tall FormatImporter le format haut de l'option Triangle rouge JSON
Sélectionnez l'option « Grande supposition » dans l'option de menu du triangle rouge.
Et après avoir cliqué sur OK, vous obtenez la table de données JMP avec un script source que vous pouvez réutiliser si nécessaire pour importer des fichiers supplémentaires.
Open(
"$Desktop/example_json.json",
JSON Settings(
Stack( 0 ),
Row( "/root/externalData" ),
Col(
"/root/externalData/orderNumber",
Column Name( "orderNumber" ),
Fill( "Use Once" ),
Type( "Numeric" ),
Format( {"Best"} ),
Modeling Type( "Continuous" )
),
Col(
"/root/externalData/batchNumber",
Column Name( "batchNumber" ),
Fill( "Use Once" ),
Type( "Character" ),
Format( {"Best"} ),
Modeling Type( "Continuous" )
),
Col(
"/root/externalData/partNumber",
Column Name( "partNumber" ),
Fill( "Use Once" ),
Type( "Numeric" ),
Format( {"Best"} ),
Modeling Type( "Continuous" )
)
),
JSON Wizard( 0 )
)
acclamations,
Stan