Sostituisci il valore di più righe da una colonna non funziona correttamenteCiao comunità JMP,
Mi è capitato un problema abbastanza strano. Ecco il mio codice:
dt_temp = data table("aaaa");
dt_temp << Summary( Group( :Column1,:Column2), Freq( "None" ), Weight( "None" ),output table name( "summary" ) );
data table("summary") << select where (:N rows >= 2 & !contains(:Column1,"AA") & !contains(:Column1,"BB") );
rows = dt_temp << get selected rows;
dt_temp:Column3[rows] = "";
//Column(dt_temp, "Column3")[rows] = "";
Quando eseguo questo codice, anche le righe hanno un valore come [10, 11, 20, 21] ma il risultato finale della colonna3 è diverso. Sostituisce le altre righe (diciamo la riga 1, 5, ...) invece delle righe nelle righe selezionate.
Potreste aiutarmi a risolvere questo problema?
ScriptingRe: Sostituisci il valore di più righe da una colonna non funziona correttamenteStai cercando di sostituire i valori nella tabella dati originale o nella tabella di riepilogo? Questo sembra funzionare bene per me:
Names Default To Here(1);
dt_temp = Open("$SAMPLE_DATA/Big Class.jmp");
dt_temp << Summary(Group(:age, :sex), Freq("None"), Weight("None"), output table name( "summary" ));
data table("summary") << Select Where(:N Rows >= 3 & !Contains(:sex, "M"));
rows = dt_temp << Get Selected Rows;
show(dt_temp:name[rows]);
dt_temp:name[rows] = "";
show(dt_temp:name[rows]);Re: Sostituisci il valore di più righe da una colonna non funziona correttamenteCiao Jarmo,
Grazie per il tuo suggerimento, ma sembra che non funzioni per me.
Per chiarire, vorrei sostituire i valori nella tabella originale in base al condizionale della tabella di riepilogo.
Ho anche provato a eseguire il tuo codice, ed ecco il risultato:
Righe selezionate dalla tabella di riepilogo:

Righe selezionate dalla tabella principale. C'erano 15 righe selezionate ma ha sostituito solo la prima riga di ciascun gruppo:

Re: Sostituisci il valore di più righe da una colonna non funziona correttamenteQuale versione di JMP stai utilizzando? Sto usando 15.2.1 e il mio esempio sembra funzionare bene per me:

Re: Sostituisci il valore di più righe da una colonna non funziona correttamentesto usando Jmp Pro 12.2.0, versione a 64 bit. File di registro per riferimento:

Sebbene il file di registro che mostra il numero di riga (-1) non sia valido, ma quando mostro le righe, non esiste una riga del genere.
Re: Sostituisci il valore di più righe da una colonna non funziona correttamenteBasato su questo Sottoscrizione della tabella dati Data il modo in cui sto impostando i valori delle celle potrebbe essere diventato disponibile in JMP13.
Cercherò di evitare il loop ma non ho accesso alla versione precedente di JMP di 15, quindi non sono sicuro che funzionerà:
Names Default To Here(1);
dt_temp = Open("$SAMPLE_DATA/Big Class.jmp");
dt_summary = dt_temp << Summary(Group(:age, :sex), Freq("None"), Weight("None"), output table name( "summary" ));
dt_summary << Select Where(:N Rows >= 3 & !Contains(:sex, "M"));<BR />
//get rows which should be set to empty
rows = dt_temp << Get Selected Rows;
//get all values in name column
colValues = dt_temp:name << get values;
show(colValues);
//set selected rows in the colValues list to ""
colValues[rows] = "";
show(colValues);
dt_temp:name << Set Values(colValues);