dt: immagine - mancante?Qual è il modo corretto per verificare se manca un'immagine in una tabella dati?
... e perché c'è una differenza tra la formula della colonna e la domanda JSL
mancante(:pet[5])
Names Default to Here(1);
dt = Open( "$SAMPLE_DATA/Big Class Families.jmp" );
dt[[4],"pet"]=.;
New Column( "is missing",Formula( Is Missing( :pet ) ));
New Column( "is empty", Formula( Is Empty( :pet ) ));
New Column( "is number",Formula( Is Number( :pet ) ));
New Column( "is expr",Formula( Is expr( :pet ) ));
write("is missing:");
Show(is missing(:pet[4]));
Try(Show(is missing(:pet[5])), Print("is missing: error with existing image"));
write("\!n\!nis empty");
Show(is empty(:pet[4]));
Show(is empty(:pet[5]));
write("\!n\!nis number");
Show(is number(:pet[4]));
Show(is number(:pet[5]));
write("\!n\!nis expr");
Show(is expr(:pet[4]));
Show(is expr(:pet[5]));Automazione e scriptingFusione e pulizia dei datiRe: dt: immagine - mancante?In JMP può essere un pasticcio controllare se gli oggetti sono vuoti, mancanti, nulli, nessuno, non hanno elementi e molto rapidamente si finisce in una situazione che richiede più controlli per evitare diversi tipi di errori. Ho creato un elemento della lista dei desideri per avere una sorta di tipo universale di funzione Is None? per controllare se oggetti/variabili/... sono vuoti/mancanti
Aggiungere una funzione che può essere utilizzata universalmente per verificare se l'oggetto/variabile è vuoto/mancante
Re: dt: immagine - mancante?E una risposta migliore alla domanda vera e propria:
New Column( "type",Formula( type( :pet ) ));
type(pet[5])
Nel tuo esempio il tipo è "Immagine" o "Numero".
E l'altra domanda: la formula della colonna probabilmente sta producendo un valore stringa per l'espressione. Puoi usare isMissing su una stringa. Puoi far sì che il JSL si comporti allo stesso modo, in questo modo:
row()=5;ismissing(:pet)
Re: dt: immagine - mancante?Trovo la funzione isMissing() difficile da usare. Non fa quello che voglio che faccia quando il suo argomento non è un numero, o magari una stringa. Prova questo:
is number(:pet[5]) & is missing(:pet[5])