Zählen von Zeichenspalten in JSLIch habe eine Datentabelle mit mehreren Datenspalten mit binären 0/1-Antworten (Zeichen, Nominal). Ich möchte eine neue Spalte (numerisch, kontinuierlich) erstellen, in der ich die Vorkommen von „1“ in diesen Spalten zähle.
Kann mir jemand helfen, ein Skript zum Erstellen dieser Spalte zu erstellen? Ich denke, das sollte einfach sein, aber ich stoße auf Hindernisse. Muss ich meine Zeichenspalten in numerische/kontinuierliche Spalten umwandeln und eine Summationsformel erstellen?Danke schön!
Beispieltabelle
| Infektion (Charakter, nominell) | Blutgerinnsel (Charakter, nominal) | Chirurgie (Charakter, Nominal) | NEUE SPALTE: Anzahl der Komplikationen (numerisch, kontinuierlich) |
| 0 | 1 | 1 | 2 |
1 | 1 | 1 | 3 |
| 1 | 0 | 0 | 1 |
| 0 | 1 | 0 | 1 |
Erweiterte statistische ModellierungAutomatisierung und SkripterstellungVerbraucher- und MarktforschungMassenanpassungZuverlässigkeitsanalyseBetreff: Zählen von Zeichenspalten in JSLDanke an beide @Mark_Bailey Und @txnelson für die Bereitstellung zweier Lösungsansätze für mein Problem. Ich werde das Skript verwenden, da ich versuche, ein vollständiges Skript für die Erstellung meiner Datentabelle zu erstellen, das ich in Zukunft wieder verwenden kann.
Danke!
Betreff: Zählen von Zeichenspalten in JSL@Mark_Bailey eine gute Lösung geliefert
Hier ist eine andere Möglichkeit, das Problem zu lösen
Names Default To Here( 1 );
dt = Current Data Table();
charNames = dt << get column names( character );
// convert char columns to numeric
For( i = 1, i <= N Items( charNames ), i++,
Column( dt, charNames[i] ) << data type( numeric )
);
// Create the jsl required to sum all of the specified columns
theExpr = "dt << new column(\!"number of complications\!", formula(sum(" ||
Substr( Char( charnames ), 2, Length( Char( charNames ) ) - 2 ) || "));";
// Execute the line of code created
Eval( Parse() );
// Delete the formula leaving the static values
Column( dt, "number of complications" ) << delete formula;
// Convert the binary columns back to character
For( i = 1, i <= N Items( charNames ), i++,
Column( dt, charNames[i] ) << data type( character )
);Betreff: Zählen von Zeichenspalten in JSLEine Formel ist alles, was Sie brauchen.

Hier ist das Ergebnis.
