Come faccio a contare il numero di righe non vuote in righe specifiche?Ho la tabella visualizzata qui e vorrei creare una nuova colonna che contenga "N", che è il numero di colonne che hanno numeri, ma solo per le colonne etichettate "DecodeCount_BW**". Ad esempio, per la prima riga, dovrebbe restituire "5", per la seconda riga dovrebbe restituire "2", ecc.
In Excel lo faccio con "counta", ma sto cercando di imparare JMP per migliorare l'analisi statistica, ma mi sono bloccato su cose semplici come questa, forse a causa del mio cervello formattato in Excel... Scusate se è molto elementare, ma non riesco a trovare una formula nell'elenco delle formule che lo faccia.
Grazie
Utente JMP17
Organizzazione dei contenutiFusione e pulizia dei datiR: Come faccio a contare il numero di righe non vuote in righe specifiche?Le formule in genere non funzionano così facilmente in questa direzione (calcolare qualcosa per riga anziché per colonna). A seconda di cosa stai facendo, impilare prima i tuoi dati potrebbe essere utile.
Puoi usare una formula per questo (potrebbe essere un po' pignolo), ma in genere userei uno script. Di seguito un esempio

Names Default To Here(1);
dt = New Table("Untitled 3",
Add Rows(3),
Compress File When Saved(1),
New Column("Column 1", Numeric, "Continuous", Format("Best", 12), Set Values([., ., .])),
New Column("Column 2", Numeric, "Continuous", Format("Best", 12), Set Values([., ., .])),
New Column("AB1", Numeric, "Continuous", Format("Best", 12), Set Values([2, ., .])),
New Column("AB2", Numeric, "Continuous", Format("Best", 12), Set Values([., 2, 1])),
New Column("AB3", Numeric, "Continuous", Format("Best", 12), Set Values([., 5, .]))
);
dt << New Column("N", Numeric, Continuous);
cols_of_interest = Filter Each({colname}, dt << Get Column Names("String"),
Starts With(colname, "AB");
);
For Each Row(Current Data Table(),
:N = Sum(!Is Missing(dt[Row(), cols_of_interest]));
);
e se vuoi davvero usare una formula potresti essere in grado di usare qualcosa come questo
As Constant(cols_of_interest = Filter Each({colname}, Current Data Table() << Get Column Names("String"),
Starts With(colname, "AB");
));
Sum(!Is Missing(dt[Row(), cols_of_interest]));
Devi elaborare il tuo confronto per filtrare fino alle colonne di interesse (Inizia con dovrebbe funzionare anche per i tuoi dati)
R: Come faccio a contare il numero di righe non vuote in righe specifiche?Le tabelle/il riepilogo possono contare per te. Per far sì che conti su più colonne, devi prima impilare i dati:
dt = New Table( "test",
Add Rows( 6 ),
New Column( "W8",Set Values( [2, 5, ., 5, ., 6] )),
New Column( "W9",Set Values( [2, ., 3, 3, 1, 2] )),
New Column( "W1",Set Values( [2, ., ., ., ., .] )),
New Column( "W2",Set Values( [3, ., ., ., ., .] )),
New Column( "W3",Set Values( [3, ., ., ., ., .] )),
New Column( "W4",Set Values( [., ., 4, ., 2, .] )),
New Column( "W5",Set Values( [., 2, ., ., ., .] )),
New Column( "W6",Set Values( [., ., 5, ., 3, .] )));
dt << New Column( "row",Formula( Row() ));
dtstack =dt << Stack( columns( :W8, :W9, :W1, :W2, :W3, :W4, :W5, :W6 ),"Non-stacked columns"n( Keep( :row ) ));
dtstack << Summary( Group( :row ), N( :Data ) );
A proposito:
"Non-stacked columns"n
un argomento denominato che deve essere scritto come "..."n . Argh!
Quanto è bravo quel registro avanzato a conoscere questi dettagli...