ottenere righe dove restituire matrice vuota<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />Ho una tabella di dati che sto cercando di manipolare. Sto usando la funzione get rows where per trovare dove la prima colonna è uguale a una stringa, chiamiamola "aaa". Quando utilizzo il software per eseguire questa operazione, funziona correttamente e vengono selezionate due righe, la riga 1 e la riga 2240. Quando provo a scriverlo, il risultato è una matrice vuota.
Ecco lo script che sto usando:
Names Default To Here( 1 );
dtx = Current Data Table();
noRows = N Rows( dtx );
ddd = dtx << Get Rows Where( Column( dtx, 1 ) == "aaa" );
e il risultato è
[](0, 1)
nota che questo restituisce un 1
Column( dtx, 1 ) [1] == "aaa"
Qualcuno ha idea di cosa sto facendo male?
grazie in anticipo
Erica
Re: ottieni righe dove restituisci matrice vuotaFreddo. Non ho letto abbastanza attentamente la domanda originale e mi ero comunque dimenticato del vuoto [].
Re: ottieni righe dove restituisci matrice vuota
dtx=open("$sample_data/big class.jmp");
c=column(dtx,3);
dtx<
Ha funzionato, grazie a entrambi.
H
Re: ottieni righe dove restituisci matrice vuotaUn confronto di A Oggetto colonna con un corda restituirà sempre false. In alcuni casi (o in generale?) a JMP deve essere detto esplicitamente che ti riferisci a una colonna o ai valori della colonna (ricordo che c'è stata una buona discussione su questa differenza forse un po 'confusa ma non riesco a trovarla ora. ..)
Puoi accedere ai dati con gli indici (come hai mostrato sopra con Column( dtx, 1 ) [1] == "aaa"). In funzioni come G et Righe Where() che fondamentalmente iterano attraverso tutti i valori di colonna, è possibile accedere a ciascun valore con uno dei seguenti:
1) Colonna ( dtx , 1 )[] == "aa" // Nota le parentesi vuote
2) Come colonna ( dtx , 1 ) == "aa"
3) O più semplice con i due punti di scoping come C Hales ha mostrato sopra
Re: ottieni righe dove restituisci matrice vuotaMi sembra Get Rows Where vuole un argomento più semplice, prova uno di questi
dtx=open("$sample_data/big class.jmp");
c=column(dtx,3);
dtx<
O
dtx=open("$sample_data/big class.jmp");
dtx<
il valore restituito dall'aspetto strano, [](0, 1), è l'array vuoto di JMP di 0 righe e 1 colonna.i due esempi restituiscono più righe, di una colonna:
[1, 2, 3, 4, 5, 9, 10, 11, 16, 17, 18, 19, 20, 28, 29, 35, 36, 38]