Re: JMP Script : Creazione di un nuovo elencoSe hai JMP16+ sotto c'è un'opzione che usa Filter Each e controlla se la colonna ha solo valori mancanti con IsMissing
Names Default To Here(1);
input_list = {"height", "Weight", "Age"};
dt = New Table("Untitled 6",
Add Rows(2),
Compress File When Saved(1),
New Column("_LimitsKey", Character, "Nominal", Set Values({"_UCL", "_LCL"})),
New Column("height", Numeric, "Continuous", Format("Best", 12), Set Values([54, 72])),
New Column("Weight", Numeric, "Continuous", Format("Best", 12), Set Values([80, 150])),
New Column("Age", Numeric, "Nominal", Format("", 16), Set Values([., .]))
);
new_list = Filter Each({list_val}, input_list,
found_values = Sum(!IsMissing(dt[0, list_val]));
found_values > 0;
);
show(new_list);
L'aggiunta di stampe di debug all'interno di Filter Each potrebbe essere utile per capire cosa sta succedendo. Ad esempio
Show(dt[0, list_val]);
Show(IsMissing(dt[0, list_val]));
Show(!IsMissing(dt[0, list_val]));
show(found_values);
Ci sono anche molti altri modi per farlo (come la maggior parte delle volte con jmp)
Re: JMP Script : Creazione di un nuovo elencoOttimo, funziona bene! Grazie mille!
Vorrei implementare una condizione if basata su questo:
Se la colonna Y è inclusa nel list_val creato, allora...
Come posso scrivere questa condizione?
If (Eval(Y) <FONT color="#FF0000">!=</FONT> list_val,
...
Penso che il != non sia adattato...
Qualche idea?
Re: JMP Script : Creazione di un nuovo elencoUtilizzo Contiene() con If() per verificare se l'elemento viene trovato da un elenco
Contains({"a","b","c"}, "b");
oppure puoi usare Contiene oggetto()
Contains Item("b", {"a","b","c"});Re: JMP Script : Creazione di un nuovo elencoGrazie per la tua risposta,
Dovrebbe funzionare ma a JMP non piace Eval(Y) e restituisce sempre 0:
r=Contains(list_val, Eval(Y))
Per informazione, la Y è fatta così:
Y = concat(Y," (ppm)");
Qualche idea?
Sebastiano
Re: JMP Script : Creazione di un nuovo elencoNon sono esattamente sicuro di cosa stai cercando di fare? Perché stai usando Eval? Di solito è più facile gestire i nomi delle colonne come stringhe e poi, quando ne hai bisogno, convertirli in qualche modo in riferimenti di colonna
Re: JMP Script : Creazione di un nuovo elencoSto usando Eval perché si basa sulla selezione dell'utente e quindi sulla concatenazione:
Y = concat(Y," (ppm)");
Quindi devo determinare se questa selezione utente può essere trovata nell'elenco:
r=Contains(list_val, Eval(Y))
Ho provato anche questo
r=Contains(list_val, Y)
Ma anche restituire sempre 0...
Script JMP: creazione di un nuovo elencoCiao a tutti,
Ho creato una lista denominata Y_list contenente nomi di variabili. Da questo elenco, vorrei creare un nuovo elenco, contenente solo i nomi delle variabili che contengono valori nel set di dati.
Esempio:
Y_list contiene {"altezza", "peso", "età"}
| _LimitsKey | altezza | Peso | Età |
| _UCL | 54 | 80 | |
| _LCL | 72 | 150 | |
Poiché non è presente alcun valore nella riga Età, vorrei creare un nuovo elenco contenente solo nomi di variabili che contengono dati:
Y_new_list ==> {"altezza", "peso"}
Tuttavia, non so come creare questo nuovo elenco con lo script JMP.
Hai qualche suggerimento per aiutarmi?
Molte grazie
Sebastiano
Modellazione statistica avanzataAutomazione e scripting