<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />Hallo,
Ich erhalte oft Daten im SPSS-Format. Wenn ich die Daten in JMP importiere, verwalte ich die SPSS-Namen. JMP erstellt eine neue Spalteneigenschaft namens "SPSS-Name" und verwendet diese Namen auch als Spaltennamen. Mein Ziel ist es, die Spaltennamen basierend auf "SPSS-Name" zu ändern, eine neue Spalte mit dem neuen Spaltennamen, jedoch mit einem hinzugefügten Buchstaben im Namen, hinzuzufügen und dann eine Formel für diese neue Spalte zu haben. Angenommen, ich verwende die Big Class-Tabelle. Ich habe jeder Spalte eine neue Eigenschaft hinzugefügt und sie "SPSS-Name" genannt. Ich setze dann jeden SPSS-Namen auf "Q1", "Q2", ..., "Q5", was den ursprünglichen SPSS-Dateinamen entspricht. Ich habe das folgende Skript erstellt, das nach dem SPSS-Namen "Q4" (der der Höhenspalte in Big Class entspricht) sucht, den Spaltennamen in "Neue Höhe" ändert und eine neue Spalte mit dem Namen "Neue Höhe - B" hinzufügt. Dieser Teil funktioniert gut. Was ich nicht zur Arbeit bekommen kann, ist der Formelteil. Die neue Spalte sollte eine Formel mit einem Wert enthalten, der auf der umbenannten Höhenspalte basiert. das heißt, basierend auf "Neue Höhe". Wenn ich mir die neue Spalte ansehe, fehlen mir alle Wertcodes. Die formeleigenschaft hat die korrekte formel, mit der Ausnahme, dass "x" anstelle von "New Height" verwendet wird. Wie kann ich diesen letzten Teil zum Laufen bringen? Irgendwelche Vorschläge?
dt = Aktuelle Datentabelle ();
für (i = 1, i <= N Col (dt), i ++,
col = Spalte (i);
match (col << Eigenschaft abrufen ("SPSS NAME"),
"Q4",
x = "neue Höhe";
col << Set Name (x);
Neue Spalte (x || "- B", numerisch, fortlaufend,
Breite (5), Formel (If (Spalte (x)> 60, 1, 0))
)
);
);
dt << Formeln ausführen;
Vielen Dank,
Walt Paczkowski
Der Ersatzbefehl kann ein kniffliger Befehl sein und braucht eine Weile, um ihn zu erfassen.
Ich habe wie Sie die SPSS-Eigenschaft von 'Q4' unter der Höhe-Spalte erstellt.
dt = Aktuelle Datentabelle ();
Für (i = 1, i <= NCol (dt), i ++,
col = Spalte (i);
Übereinstimmung (col << Eigenschaft abrufen ("SPSS NAME"),
"Q4",
newcoln = col << Name holen || "-B";
newcol = dt << NewColumn (newcoln);
// die Werte statt der Referenzen ersetzen
Eval (Stellvertreter (
Ausdruck (newcol << Set Formula (If (_xvar> 60, 1, 0))))
Ausdruck (_xvar), Parse (Spalte << Name abrufen))
);
);
);