Automatizzazione delle correzioni dei dati individualiHo identificato errori molto specifici nel mio set di dati. Posso risolverli manualmente molto facilmente, ma per vari motivi ho bisogno di automatizzarlo/scriptarlo. Nello specifico, devo modificare il valore nella colonna "Attività" da "Collaboratore" a "Revisore", ma solo per celle molto specifiche tra molte. Queste celle possono essere identificate dal contenuto di una o più altre colonne, "Report#" o "Nome".
Sia i nomi che i valori dell'attività sono validi e vengono visualizzati in altri record che non devono essere modificati.
Il file allegato è un piccolo esempio in cui "Collaboratore" deve essere sostituito da "Revisore" per le righe 1 e 2.
Non sono riuscito a capire come modificare solo quei record utilizzando Col=>Recode.
Ho controllato il registro e provato il generatore di flussi di lavoro, ma ora vengono visualizzate le modifiche manuali alla tabella o l'utilizzo dell'editor di righe.
Sto cercando di imparare JSL. Anche se sembra semplice, mi sono bloccato e apprezzerei un puntatore alla sezione giusta nella documentazione o ai concetti da utilizzare.
Automazione e scriptingCombinazione e pulizia dei datiRi: Automatizzazione delle correzioni dei dati individualiSottoscrizione della tabella dati , << Ottieni righe dove, << Seleziona dove, Per ogni riga, Array associativo() sono alcune cose di cui molto probabilmente avrai bisogno.
Non ho capito questo " Sia i nomi che i valori delle attività sono validi e vengono visualizzati in altri record che non devono essere modificati. " quindi non posso fornire una risposta più precisa.
Ri: Automatizzazione delle correzioni dei dati individualiGrazie per aver richiesto chiarimenti.
Quello che intendevo è che non posso ricodificare tutti i record che coinvolgono "John Doe" o "Jane Doe" perché la maggior parte di essi non dovrebbe essere modificata.
Il nome di John Doe è scritto correttamente e non è necessario modificarlo.
John Doe è correttamente elencato come collaboratore e revisore di altri rapporti.
Non riesco a ricodificare tutti i record per l'attività "Collaboratore" perché la maggior parte di essi sono corretti.
Non posso ricodificare tutti i record per un report specifico perché la maggior parte delle righe sarà corretta.
Devo modificare una cella specifica, come report#123456 per John Doe da collaboratore a revisore.
Fondamentalmente è un problema del diagramma di Venn. Posso selezionare le righe che necessitano di modifiche ma non so come modificare il valore in una colonna specifica per le righe selezionate.
Questo lo rende più chiaro?
Ri: Automatizzazione delle correzioni dei dati individualiNon proprio perché non capisco su cosa dovrebbero basarsi queste selezioni, ma ecco alcuni esempi di cosa si può fare.
Utilizzo delle condizioni
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";
Utilizzando le righe selezionate
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";Ri: Automatizzazione delle correzioni dei dati individualiÈ possibile accedere direttamente a qualsiasi cella dati specifica in una tabella dati JMP
Colonna riga]
Pertanto, per modificare il valore di Task per le righe 1 e 2, sarebbe il JSL più diretto
names default to here(1);
:Task[1] = "Reviewer";
:Task[2] = "Reviewer";
La valutazione delle regole per determinare quali righe devono essere modificate, in base alle tue dichiarazioni, è ciò che non posso determinare. È necessario fornire ulteriori chiarimenti/specificazioni.
Ri: Automatizzazione delle correzioni dei dati individualiGrazie mille! Questo è esattamente ciò di cui avevo bisogno.