Dieser Beitrag hat nichts mit Linux zu tun; Es geht darum, JMP zum Herunterladen von Währungsumrechnungsdaten zu verwenden.
Die Währungsschaltflächen auf dem Linux-Rechner haben kürzlich meine Aufmerksamkeit erregt.
Calculator showing the currency conversion buttonsRechner mit Schaltflächen zur Währungsumrechnung
Wie erhalten sie aktuelle Umrechnungsfaktoren? Google hat mich genommen Hier , was mich genommen hat Hier , was mich dazu gebracht hat diese Seite der Europäischen Zentralbank mit den Tarifen und einem Link zu PDF-, CSV- und XML-Downloads. Klicken Sie auf den XML-Link und Ihr Browser wird wahrscheinlich so etwas öffnen:
screenshot of FireFox showing an XML file of exchange ratesScreenshot von FireFox, der eine XML-Datei mit Wechselkursen zeigt
Ein kurzer Blick legt nahe, dass diese Kurse alle auf Euro basieren, da der Euro nicht erscheint und es keinen 1,0000-Faktor in der Tabelle gibt. So stand es auch auf der verweisenden Seite:
based on the euroauf Eurobasis
Lassen Sie uns das XML in eine Datentabelle laden. Der XML-Assistent von JMP 15 kann dabei helfen, die JSL dafür zu erstellen. Speichern Sie zuerst das XML aus dem Browser auf Ihrem Computer, verwenden Sie dann Datei->Öffnen, wählen Sie die XML-Erweiterung aus, wählen Sie Ihre Datei aus und öffnen Sie sie im Assistenten.
Choose the XML extension to see the downloaded fileWählen Sie die XML-Erweiterung, um die heruntergeladene Datei anzuzeigen
Der XML-Assistent wird geöffnet und es ist an der Zeit zu entscheiden, welche Spalten und Zeilen interessant sind. Öffnen Sie die Statistikspalten, um zu sehen, unter welchen Tasten sich die sich wiederholenden Daten befinden, und schließen Sie die Namensspalten, damit die Anzeige besser auf den Bildschirm passt:
opening the XML file with the wizardÖffnen der XML-Datei mit dem Assistenten
Sie könnten auch den Tall Guess verwenden, um dasselbe zu bekommen. Der Tall Guess bemerkt die 32 sich wiederholenden Einträge und wählt diesen Schlüssel aus, um Zeilen zu erstellen, und wählt dann alle (beide) Unterschlüssel aus, um Spalten zu erstellen. Es verwendet die Sampler-Daten, um zu bestimmen, ob die Unterschlüssel numerische oder Zeichendaten enthalten sollen.
Benennen Sie nun die Spalten um, indem Sie die Stat Cols ausschalten und die Name Cols wieder einschalten. Verbessern Sie auch ein paar andere Dinge, machen Sie den Modellierungstyp für Währung zu Nominal. Zeit, Name, Betreff werden nach dem Bild beschrieben...
Changing column names, adding some meta dataÄndern von Spaltennamen, Hinzufügen einiger Metadaten
Es gibt drei weitere Spalten mit Metadaten: Zeit, Name, Betreff. Zeit scheint am nützlichsten zu sein; Lassen Sie uns die Zeit in jeder Zeile halten. Name und Betreff sollten nur als Tabellenvariablen geführt werden; Sie werden nach OK angezeigt:
The source script and the two table variables are part of the imported tableDas Quellskript und die beiden Tabellenvariablen sind Teil der importierten Tabelle
Klicken Sie auf die Tabellenvariablen, um daran erinnert zu werden, woher die Tabelle stammt.
Um diesen Import nächste Woche mit den aktuellen Daten von nächster Woche zu reproduzieren, schnappen Sie sich das Quellskript und bearbeiten Sie die URL:
Open(
//"E:\eurofxref-daily.xml",
"https://www.ecb.europa.eu/stats/eurofxref/eurofxref-daily.xml",
XML Settings( Stack( 0 ),
Row( "/gesmes:Envelope/Cube/Cube/Cube" ),
Col("/gesmes:Envelope/gesmes:subject",
Column Name( "gesmes:subject" ), Fill( "Use Forever" ),
Type( "Table Variable" ), Format( {"Best"} ), Modeling Type( "Continuous" ) ),
Col("/gesmes:Envelope/gesmes:Sender/gesmes:name",
Column Name( "gesmes:name" ), Fill( "Use Forever" ),
Type( "Table Variable" ), Format( {"Best"} ), Modeling Type( "Continuous" ) ),
Col("/gesmes:Envelope/Cube/Cube/@time",
Column Name( "time" ), Fill( "Use Forever" ),
Type( "Numeric" ), Format( {"yyyy-mm-dd", 10} ), Modeling Type( "Continuous" ) ),
Col("/gesmes:Envelope/Cube/Cube/Cube/@currency",
Column Name( "currency" ), Fill( "Use Once" ),
Type( "Character" ), Format( {"Best"} ), Modeling Type( "Nominal" ) ),
Col("/gesmes:Envelope/Cube/Cube/Cube/@rate",
Column Name( "rate" ), Fill( "Use Once" ),
Type( "Numeric" ), Format( {"Best"} ), Modeling Type( "Continuous" ) )
),
XML Wizard( 0 )
);