Erweitertes Protokoll - n nach "Spaltenname" hinzugefügtLeute,
Bei Verwendung des erweiterten Protokolls mit Datentabellen mit langen, aussagekräftigen Spaltennamen wird in der Ausgabe ein „n“ nach dem Variablennamen eingefügt, wie in einigen Beispielen unten gezeigt.Normalerweise wird das "n" nicht erzeugt, wenn der Spaltenname kurz ist und keine nicht-alphabetischen Zeichen wie & oder , enthält.Obwohl der erweiterte Protokollcode mit diesen zusätzlichen Zeichen ausgeführt wird, würde ich gerne besser verstehen, warum das „n“ erzeugt wird und ob ich sie als Teil meines Codes behalten oder entfernen sollte?
// Select where
Data Table( "PESD Stationary, Envidas SQL Data Table, 1-Min" ) <<
Select where( :"Ambient NOx, N500 Status"n == 31 );
// Subset data table
Data Table( "PESD Stationary, Envidas SQL Data Table, 1-Min" ) << Subset(
Selected Rows( 1 ),
columns(
:"Date & Time"n, :Date, :Day of Year, :"Ambient NO, N500 (ppb)"n,
:"Ambient NO, N500 Status"n, :"Ambient NO2, N500 (ppb)"n,
:"Ambient NO2, N500 Status"n, :"Ambient NOx, N500 (ppb)"n,
:"Ambient NOx, N500 Status"n
)
);
SkripterstellungBetreff: Erweitertes Protokoll - n nach "Spaltenname" hinzugefügt@txnelson @jthi könnten Sie mir bitte helfen, die Liste unten in eine andere Liste umzuwandeln? Ich kann " nicht durch \!" ersetzen einfach codieren. Ich bin hier hängengeblieben, vielen Dank für deine Hilfe.
factors = {"Kilometer (kg)"n, "Temperature (ºC)"n};
factors = {\!"Kilometer (kg)\!"n, \!"Temperature (ºC)\!"n};
Der Grund für die Konvertierung der Liste ist, dass, sobald ich die Elemente aus Faktoren ausgewählt und versucht habe, sie mit anderen Zeichenfolgen zu kombinieren, " und n verschwunden sind, was Probleme für meinen Code verursacht hat. Wenn ich die zweite Liste haben kann, wird es keine Probleme geben.
Zum Beispiel:
factors = {"Kilometer (kg)"n, "Temperature (ºC)"n};
responses_sim = "";
values = {1.23,2.34};
for (i=1, i<=N Items(factors), i++,
responses_sim = responses_sim || factors[i] || "<< Add Random Noise(" || char(values[i]) || "),"
);
show(responses_sim);
responses_sim = "Kilometer (kg)<< Add Random Noise(1.23),Temperature (ºC)<< Add Random Noise(2.34),";
I want to get this result below, how to do it?
responses_sim = "Kilometer (kg)"n << Add Random Noise(1.23), "Temperature (ºC)"n << Add Random Noise(2.34),"Betreff: Erweitertes Protokoll - n nach "Spaltenname" hinzugefügtDanke txnelson und jthi für deinen Beitrag,
Ironischerweise stolperte ich, nachdem ich txnelsons letzte Antwort gelesen und im Diskussionsforum weiter herumgegraben hatte, über den folgenden Link, in dem jthi die Ablehnung des Name()-Parsers beschrieb ( https://community.jmp.com/t5/Discussions/Using-new-Name-nomenclature-with-variable/mp/365431 ).Tut mir leid, dass ich diese subtile Anpassung beim Wechsel von Version 15 auf 16 verpasst habe. Danke Leute für die Hilfe bei der Lösung.
Betreff: Erweitertes Protokoll - n nach "Spaltenname" hinzugefügtZusätzlich zu der Erklärung von txnelson finden Sie hier einen Link zur "Spaltenname"n-Syntax, wie Sie möglicherweise die Name()-Syntax in älteren Skripten sehen Verwerfen der Name()-Parser-Direktive in JMP 16 Und JMP-Hilfe - Handbuch zur Skripterstellung - Namen
Betreff: Erweitertes Protokoll - n nach "Spaltenname" hinzugefügtJMP weiß nicht, wie Sie die Spaltennamen verwenden werden.Es geht also auf Nummer sicher, indem es, wenn es auf einen Spaltennamen stößt, der verwirrend sein "könnte", es in das Format :xxxxxxx"n konvertiert.Und im Gegenzug ist es ratsam, es zu verwenden, wenn Sie sehen, dass es verwirrend sein könnte, auch wenn Sie in einigen Fällen problemlos davonkommen.
Betreff: Erweitertes Protokoll - n nach "Spaltenname" hinzugefügtIch bin mir nicht sicher, ob ich das vollständig verstehe, da ich meine Spaltennamen wie folgt bezeichne: "Spaltenname, Spalteneinheiten".Mit dem Spaltenbereich ( : ) würde ich denken, dass JMP nicht verwirrt wäre, ob ich mit einer Variablen oder einem Spaltennamen arbeite.
Betreff: Erweitertes Protokoll - n nach "Spaltenname" hinzugefügtDie „xxxxxxx“n-Version des Spaltennamens wird erstellt, wenn JMP feststellt, dass der tatsächliche Spaltenname im offenen Code nicht korrekt analysiert wird.Am einfachsten lässt sich dies anhand des folgenden Beispiels demonstrieren.
Wenn eine Variable "XY" heißt und man mit dieser Spalte eine neue Variable erstellen und sie damit zur Variablen Z hinzufügen möchte, wäre die JSL
newVar = X - Y + Z;
JMP würde nach einer Variablen mit dem Namen X, einer Variablen mit dem Namen Y und einer Variablen mit dem Namen Z suchen.Grundsätzlich würde JMP verwirrt werden.
newVar = "X - Y"n + Z;
klärt den Sachverhalt.