Unterschied zwischen festgelegter und neuer Tabellenvariable – seltsame Ergebnisse beim Schreiben einer Zeichenfolge?Könnte mir jemand helfen zu verstehen, warum die Tabellenvariablen 36D10 und 36E10 in der Sci-Notation erweitert zurückkommen? aber scheinbar nur für 'neue' statt 'gesetzte' Tabellenvariable?
Danke,
--Pfirsich

dt = New Table("Table");
testvar = "36D10";
dt << New Table Variable("tv_testD", char(testvar));
testvar = "36C10";
dt << New Table Variable("tv_testC", testvar);
testvar = "36F10";
dt << New Table Variable("tv_testF", testvar);
testvar = "36E10";
dt << New Table Variable("tv_testE", testvar);
testvar = "36E10";
dt << Set Table Variable("tv_testEset", testvar);Erweiterte statistische ModellierungVerbraucher- und MarktforschungMassenanpassungBetreff: Unterschied zwischen festgelegter und neuer Tabellenvariable – seltsame Ergebnisse beim Schreiben einer Zeichenfolge?Danke Craige, das hilft zu klären und festzulegen, wie ich es verwenden soll.
Es wäre vielleicht schön, wenn der Dokumentation etwas hinzugefügt würde, oder vielleicht würden sich die Implementierungen der einzelnen Versionen in einer zukünftigen JMP-Version ändern, damit sie konsistent sind – es scheint für einen Benutzer ziemlich schwierig zu sein, die Unterschiede im Verhalten mit der aktuellen Dokumentation (und dem „E ' Ich dachte sofort: ‚Oh, es macht etwas mit dem Exponenten – aber das ‚D‘, das ein Problem verursachte, brachte mich wirklich aus der Fassung.
Betreff: Unterschied zwischen festgelegter und neuer Tabellenvariable – seltsame Ergebnisse beim Schreiben einer Zeichenfolge?E steht für einen Exponenten und (vor sehr langer Zeit) D für einen Exponenten mit doppelter Genauigkeit.
Ich empfehle die Verwendung SETTableVariable ; Es verhält sich so, wie ich es erwartet habe: Es speichert eine Zahl als Zahl und einen String als String und erstellt nur dann eine Tabellenvariable, wenn sie noch nicht vorhanden ist.
NEUTableVariable fügt dem Namen ein Suffix hinzu, wenn es bereits vorhanden ist, und wandelt (das unerwartete Verhalten) Zeichenfolgen, die wie Zahlen aussehen, in Zahlen um.
Um die Sache noch weiter zu verwirren, dt<< GETTableVariable („name“) gibt eine Zeichenfolge zurück, auch wenn der Wert numerisch ist.
Ich empfehle die Verwendung dt:name um den gespeicherten numerischen Wert oder Zeichenfolgenwert abzurufen.
dt = New Table("Table");
dt << new Table Variable("a", char(17)); // 17 vs char(17)
show(dt:a,dt<<GETTABLEVARIABLE></GETTABLEVARIABLE>dt:a = 17; <<< in eine Zahl umgewandelt
dt << gettablevariable("a") = "17"; <<< aber als String abgerufen !?!?!
dt:a = 42,42; <<< hat wie erwartet eine Zahl gespeichert
dt << gettablevariable("a") = "42.42"; <<< ?!?!? gibt immer einen String zurück
dt:a = "Hallo"; <<< hat wie erwartet eine Zeichenfolge gespeichert
dt << gettablevariable("a") = "hello"; <<< Na ja, ok
dt:a = 42,42;
dt << gettablevariable("a") = "42.42";
Betreff: Unterschied zwischen festgelegter und neuer Tabellenvariable – seltsame Ergebnisse beim Schreiben einer Zeichenfolge?Sie können sich mit diesem Problem an den JMP-Support wenden support@jmp.com
Wenn Sie eine Antwort erhalten, die das Verhalten erklärt, fügen Sie bitte einen neuen Kommentar zu diesem Thema hinzu, damit jeder davon erfahren kann.