Präfix zu Spaltennamen hinzufügen (Scripting)Hallo
Ich habe einen JMP-Datensatz und möchte allen Spaltennamen in diesem Datensatz das gleiche Präfix hinzufügen. Mein Code unten macht nicht ganz das, was ich will.
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
dt2 = dt << For( i = 25, i <= N Cols( dt ), i++,
cName = Column( dt, i ) << Get Name;
newname = cName || "Prefix_";
Column( dt, i ) << Set Name( newname );
);
Nun ein zweites Szenario:
Stellen Sie sich vor, die Spalte „Geschlecht“ in „Big Class“ enthält nur Fs (oder Ms).
Wie kann ich mithilfe eines Dienstprogramms/einer Makrovariablen im obigen Code auf diesen Inhalt zugreifen und ihn als Präfix verwenden?
Prost, Neuling
Betreff: Präfix zu Spaltennamen hinzufügen (Scripting)Es tut mir leid, Mark. Mir ist nicht aufgefallen, dass der Puffer nicht die neueste JSL-Codevariante enthielt.
Wie auch immer, ich habe es ein wenig optimiert ...
Names Default to Here( 1 );
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
prefix = dt:sex[1];
For( i = 1, i <= N Cols( dt ), i++,
cName = Column( dt, i ) << Get Name;
newname = prefix ||"_"||cName;
Column( dt, i ) << Set Name( newname ); );
Betreff: Präfix zu Spaltennamen hinzufügen (Scripting)Erstens ist For() eine Funktion und keine Nachricht für eine Datentabelle, die keinen Verweis auf eine neue Datentabelle zurückgibt. Zweitens, warum sollte der Schleifenindex bei 25 beginnen? Drittens: Warum ein Präfix verketten? nach der Name? Dieses Ergebnis ist ein Suffix.
Names Default to Here( 1 );
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
prefix = dt:sex[1];
For( i = 1, i <= N Cols( dt ), i++,
cName = Column( dt, i ) << Get Name;
newname = prefix || cName;
Column( dt, i ) << Set Name( newname );
);