Überprüfen Sie die Spaltennamen, bevor Sie Überlagerungsdiagramme im V-Listenfeld erstellen<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />Ich möchte ein V-Listenfeld mit Overlay-Plots nur für die in einer Datendatei vorhandenen Spalten erstellen. Die Namen der Spalten können sich von Datei zu Datei ändern oder fehlen oder sind vorhanden. Ich konnte vor dem Erstellen einzelner Überlagerungsdiagramme das Vorhandensein eines Spaltennamens testen. Ich kann nicht herausfinden, wie man Spaltennamen in einem V-Listenfeld und das V-Listenfeld zum Darstellen der entsprechenden Überlagerungsdiagramme sucht zu vorhandenen Spalten und nicht hängen, wenn eine Spalte fehlt. Anregungen wären sehr dankbar.
dt = open ("$ sample_data \ Big Class.jmp");
col_name_list = dt << Spaltennamen (String) abrufen;
V-Listenfeld (
If (! Enthält (col_name_list,: "height"),
Überlagerungsdiagramm (
X (: Name ("Höhe")),
Y (: Name ("Gewicht")),
Y-Skala (links, rechts),
Einzelachsen (1),
Verbindung durch fehlendes (1)
)
);
If (! Enthält (col_name_list,: "Alter"),
Überlagerungsdiagramm (
X (: Name ("Alter"))
Y (: Name ("Gewicht")),
Y-Skala (links, rechts),
Einzelachsen (1),
Verbindung durch fehlendes (1)
)
);
If (! Enthält (col_name_list,: "ratio"),
Überlagerungsdiagramm (
X (: Name ("bmi")),
Y (: Name ("Gewicht")),
Y-Skala (links, rechts),
Einzelachsen (1),
Verbindung durch fehlendes (1)
)
);
);
Re: Überprüfen Sie die Spaltennamen, bevor Sie im V-Listenfeld Overlay-Diagramme erstellenVielen Dank für Ihre Hilfe. Ich hatte es eilig und vergaß, den Befehl Neues Fenster einzuschließen, obwohl ich wusste, dass dies erforderlich war.
Re: Überprüfen Sie die Spaltennamen, bevor Sie im V-Listenfeld Overlay-Diagramme erstellenDas V-Listenfeld ist nur ein Anzeigefeld. Um die Box tatsächlich sehen zu können, muss sie in ein Fenster gestellt werden.
Neues Fenster ("Name", V-Listenfeld (...));
Bearbeiten: Das erforderliche Titelargument wurde in Neues Fenster () eingefügt.
Re: Überprüfen Sie die Spaltennamen, bevor Sie im V-Listenfeld Overlay-Diagramme erstellenMit den vorgeschlagenen Änderungen werden die OPs nicht im V-Listenfeld dargestellt. Ich kann individuelle OPs erstellen, wenn das V-Listenfeld auskommentiert ist. Interessant.
dt = open ("$ sample_data \ Big Class.jmp");
col_name_list = dt << Spaltennamen (String) abrufen;
V-Listenfeld (
If (Enthält (col_name_list, "height"),
Überlagerungsdiagramm (
X (: Name ("Höhe")),
Y (: Name ("Gewicht")),
Y-Skala (links, rechts),
Einzelachsen (1),
Verbindung durch fehlendes (1)
)
);
If (Enthält (col_name_list, "age"),
Überlagerungsdiagramm (
X (: Name ("Alter"))
Y (: Name ("Gewicht")),
Y-Skala (links, rechts),
Einzelachsen (1),
Verbindung durch fehlendes (1)
)
);
If (Enthält (col_name_list, "sex"),
Überlagerungsdiagramm (
X (: Name ("Geschlecht")),
Y (: Name ("Gewicht")),
Y-Skala (links, rechts),
Einzelachsen (1),
Verbindung durch fehlendes (1)
)
);
);
Re: Überprüfen Sie die Spaltennamen, bevor Sie im V-Listenfeld Overlay-Diagramme erstellenEs sollte funktionieren, wenn Sie den Nicht-Operator entfernen! before Enthält () und die Scope-Doppelpunkte vor den Zeichenfolgen in Enthält ().
...
Ob ( Enthält ( col_name_list . "Höhe" ) .
Überlagerungsplot (
X ( : Name ( "Höhe" ) ) .
Y ( : Name ( "Gewicht" ) ) .
Y-Skala ( Links . Recht ) .
Getrennte Äxte ( 1 ) .
Verbindung durch fehlendes ( 1 )
) .
) ;
...