<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />Hallo,
Ich möchte eine Datentabelle öffnen (am Beispiel von Big Class.jmp, möchte dies aber für jede Tabelle tun) und für jede Spalte eine Übersichtstabelle erstellen, die die Anzahl der nicht fehlenden Werte für jede Spalte zurückgibt (wie in der Tabelle gezeigt). unten).
| N Zeilen | N(Name) | N(Alter) | N(Geschlecht) | N(Höhe) | N(Gewicht) |
|---|
| 40 | 40 | 40 | 40 | 40 | 40 |
Ich habe dazu zwei verschiedene Ansätze ausprobiert und hatte keinen Erfolg (ich verwende JMP 9.0.3 64bit).
Im ersten Beispiel versuche ich, eine Liste analysierter Zeichenfolgen {N(:name),N(:age),N(:sex),N(:height),N(:weight)} an Summary() zu übergeben. Wenn ich dies jedoch ausführe, wird nur eine Übersichtstabelle mit N Zeilen erstellt.
Beispiel 1
/////////////////////////////////////////////// //////////////////////////////////////////////////
Open( "$SAMPLE_DATA/Big Class.jmp" );
dt = aktuelle Datentabelle();
colList = dt<
icols = N Items(colList);
sumList={};
for(i=1, i<=icols, i++,
Einfügen in(sumList, parse("N(:" || char(colList ) || ")"))
);
summDt = dt<
/////////////////////////////////////////////// //////////////////////////////////////////////////
Ich habe dann versucht, einen Ausdruck zu definieren und eine analysierte Zeichenfolge zu übergeben (N(:name),N(:age),N(:sex),N(:height),N(:weight)). Wenn ich jedoch versuche, diesen Ausdruck auszuwerten, erhalte ich Folgendes ...
Unerwartet ",". Möglicherweise fehlt ein „;“ oder ",".
Zeile 1 Spalte 9: N(:Name)►, N(:Alter), N(:Geschlecht), N(:Höhe), N(:Gewicht)
Der verbleibende Text, der ignoriert wurde, war
Beispiel2
/////////////////////////////////////////////// //////////////////////////////////////////////////
Open( "$SAMPLE_DATA/Big Class.jmp" );
dt = aktuelle Datentabelle();
colList = dt<
icols = N Items(colList);
MyExpr = expr(summDt = dt<
for(i=1, i<=icols, i++,
if(i==1, strColumns = "N(:" || char(colList ) || ")", strColumns = strColumns || ", N(:" || char(colList ) || ")")
);
//oben zur Überprüfung umgehen
//strColumns = "N(:name)"; //funktioniert für eine Spalte, gibt aber einen Fehler aus, wenn ich versuche, mehr als eine Spalte zu übergeben (z. B. „Unerwartet“, „). Möglicherweise fehlt ein „;“ oder ",".")
test = Eval Expr(MyExpr);
prüfen;
/////////////////////////////////////////////// //////////////////////////////////////////////////
Ich muss etwas Dummes tun.
Für jeden Rat/Hilfe wäre ich sehr dankbar.
Danke schön.
Danke mpb!
Es ist mir jetzt ziemlich peinlich – es war so einfach
Dieses Beispiel scheint zu funktionieren und kann helfen:
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
colList = dt << Get Column Names();
dtsum = dt << Summary(Mean( Eval( colList ) ) );