Automatisation des corrections de données individuellesJ'ai identifié des erreurs très spécifiques dans mon ensemble de données. Je peux les réparer à la main très facilement, mais pour diverses raisons, je dois l'automatiser/le scripter. Plus précisément, je dois changer la valeur dans la colonne « Tâche » de « Contributeur » à « Réviseur », mais uniquement pour des cellules très spécifiques parmi tant d'autres. Ces cellules peuvent être identifiées par le contenu d'une ou plusieurs autres colonnes, "Report#" ou "Name".
Les noms et les valeurs de tâche sont valides et apparaissent dans d'autres enregistrements qui n'ont pas besoin d'être modifiés.
Le fichier joint est un petit exemple où « Contributeur » doit être remplacé par « Réviseur » pour les lignes 1 et 2.
Je n'arrivais pas à comprendre comment modifier uniquement ces enregistrements en utilisant Col=>Recode.
J'ai vérifié le journal et essayé le générateur de flux de travail, mais les modifications manuelles du tableau ou l'utilisation de l'éditeur de lignes s'affichent désormais.
J'essaie d'apprendre JSL. Même si cela semble simple, je suis resté bloqué et j'apprécierais un pointeur vers la bonne section de la documentation ou les concepts à utiliser.
Automatisation et scriptsMélange et nettoyage des donnéesRe : Automatisation des corrections de données individuellesInscription des tables de données , << Obtenir les lignes où, << Sélectionner où, pour chaque ligne, Associative Array() sont des éléments dont vous aurez probablement besoin.
Je n'ai pas compris ceci " Les noms et les valeurs de la tâche sont valides et apparaissent dans d'autres enregistrements qui n'ont pas besoin d'être modifiés. " Je ne peux donc pas donner de réponse plus précise.
Re : Automatisation des corrections de données individuellesMerci d'avoir demandé des éclaircissements.
Ce que je voulais dire, c'est que je ne peux pas recoder tous les enregistrements impliquant "John Doe" ou "Jane Doe" car la plupart d'entre eux ne doivent pas être modifiés.
Le nom de John Doe est orthographié correctement et n'a pas besoin d'être modifié.
John Doe est correctement répertorié en tant que contributeur et réviseur sur d'autres rapports.
Je ne peux pas recoder tous les enregistrements de la tâche « Contributeur » car la plupart d'entre eux sont corrects.
Je ne peux pas recoder tous les enregistrements d'un rapport spécifique car la plupart des lignes seront correctes.
Je dois modifier une cellule spécifique, telle que le rapport#123456 pour John Doe de Contributeur à Réviseur.
Il s'agit essentiellement d'un problème de diagramme de Venn. Je peux sélectionner les lignes qui nécessitent des modifications, mais je ne sais pas comment modifier la valeur dans une colonne spécifique pour la ou les lignes sélectionnées.
Est-ce que cela rend les choses plus claires ?
Re : Automatisation des corrections de données individuellesPas vraiment car je ne comprends pas sur quoi ces sélections devraient être basées, mais voici quelques exemples de ce qui peut être fait.
Conditions d'utilisation
Names Default To Here(1);
dt = Open("$DOWNLOADS/IndividualValueEditsExample.jmp");
rows_to_update = dt << Get Rows Where(:"Report#" == "123456" & :Task == "Contributor" & :Name == "John Doe");
dt[rows_to_update, "Task"] = "Reviewer";
Utilisation des lignes sélectionnées
Names Default To Here(1);
dt = Open("$DOWNLOADS/IndividualValueEditsExample.jmp");
dt << Select Rows(1::2);
sel_rows = dt << Get Selected Rows;
dt[sel_rows, "Task"] = "Reviewer";Re : Automatisation des corrections de données individuellesToute cellule de données spécifique dans une table de données JMP est directement accessible par
Colonne[ligne]
Par conséquent, pour modifier la valeur de Task pour les lignes 1 et 2, le JSL le plus direct serait
names default to here(1);
:Task[1] = "Reviewer";
:Task[2] = "Reviewer";
Je ne peux pas déterminer l'évaluation des règles pour déterminer quelles lignes doivent être modifiées, en fonction de vos déclarations. Des éclaircissements/précisions supplémentaires doivent être indiqués.
Re : Automatisation des corrections de données individuellesMerci beaucoup! C'est exactement ce dont j'avais besoin.