Anfangen JMP 16 , JMP stellt die Parser-Direktive Name () nicht mehr her, die häufig zum Verweisen auf Variablennamen verwendet wird, die gegen typische Syntaxregeln für verstoßen Namen in JMP.
Diese Änderung ist eine Reaktion auf viele Kundenbeschwerden, dass die Syntax, Anwendungsfälle und Funktionen für die Parser-Direktive Name () verwirrend waren.
Stattdessen, JMP befürwortet die Verwendung eines neuen Syntaxformulars mit dem Namen, der als Zeichenfolge angegeben wird, gefolgt vom Zeichen "n".
Hier einige Beispiele für Variablennamen und Spaltennamen mit unzulässigen Zeichen und wie sie mit der alten Parser-Direktive Name () im Vergleich zur neuen Syntax referenziert werden:
Alt:
Name( "taxable income( 2011 )" ) = 456000;
tax = .25;
Print( tax * Name( "taxable income( 2011 )") );
//114000
Neu:
"taxable income( 2011 )"n = 456000;
tax = .25;
Print( tax * "taxable income( 2011 )"n) ;
//114000
Alt:
dt = Open("$SAMPLE_DATA/Body Fat.jmp");
dt:Name("Age(years)") << Set Modeling Type(Ordinal);
Neu:
dt = Open("$SAMPLE_DATA/Body Fat.jmp");
dt:"Age(years)"n << Set Modeling Type(Ordinal);
Um Verwirrung zu vermeiden, wurde diese neue Syntax vor einigen Versionen zu JMP hinzugefügt. Wenn Sie möchten, können Sie vorerst weiterhin die klassische Parser-Direktive Name () verwenden. Da Name () jedoch veraltet ist, wird dies der Fall sein schließlich in einer zukünftigen Version von JMP entfernt und nicht mehr erkannt werden. In JMP 16 wird die neue Syntax dokumentiert und in von JMP generierten Skripten verwendet.
Beachten Sie, dass es in den meisten Fällen wahrscheinlich einfacher ist, Funktionen wie Column () und As Column () zu verwenden, um Datentabellenspalten als Zeichenfolgen zu referenzieren. Die Syntax "colName" n ist jedoch eine hervorragende Option für Variablennamen, die unterbrochen werden die typischen Syntaxregeln.
Beispiele für die Verwendung von Column () und As Column () als Referenz für „Alter (Jahre)“:
dt = Open("$SAMPLE_DATA/Body Fat.jmp");
//Change the modeling type of "Age(years)" column
Column(dt,"Age(years)") << Set Modeling Type(Ordinal);
//Add 10 years to each age
For Each Row(dt,
age10 = As Column("Age(years)") + 10;
Show(age10);
);
Bitte wenden Sie sich an Technischer JMP-Support wenn Sie irgendwelche Fragen oder Bedenken haben!