Questo post non ha nulla a che fare con Linux; si tratta di utilizzare JMP per scaricare i dati di conversione di valuta.
I pulsanti delle valute sulla calcolatrice di Linux hanno attirato la mia attenzione di recente.
Calculator showing the currency conversion buttonsCalcolatrice che mostra i pulsanti di conversione di valuta
Come ottengono i fattori di conversione aggiornati? Google mi ha preso Qui , che mi ha preso Qui , che mi ha portato a questa pagina della Banca Centrale Europea contenente le tariffe e un collegamento ai download in formato PDF, CSV e XML. Fai clic sul collegamento XML e il tuo browser probabilmente aprirà qualcosa di simile a questo:
screenshot of FireFox showing an XML file of exchange ratesscreenshot di FireFox che mostra un file XML dei tassi di cambio
Una rapida occhiata suggerisce che questi tassi sono tutti basati sull'Euro, perché l'Euro non appare e non c'è il fattore 1.0000 nella tabella. Questo è anche ciò che ha detto la pagina di riferimento:
based on the eurobasato sull'euro
Carichiamo l'XML in una tabella di dati. La procedura guidata XML di JMP 15 può aiutare a creare il JSL per eseguire questa operazione. Innanzitutto, salva l'XML dal browser sulla tua macchina, quindi usa File->Apri, scegli l'estensione XML, seleziona il tuo file e aprilo nella procedura guidata.
Choose the XML extension to see the downloaded fileScegli l'estensione XML per vedere il file scaricato
Si apre la procedura guidata XML ed è il momento di decidere quali colonne e righe sono interessanti. Apri le colonne delle statistiche per vedere in quali chiavi si trovano i dati ripetitivi e chiudi le colonne dei nomi per adattare meglio la visualizzazione allo schermo:
opening the XML file with the wizardaprendo il file XML con la procedura guidata
Puoi anche usare il Tall Guess per ottenere la stessa cosa. The Tall Guess nota le 32 voci ripetute e seleziona quella chiave per creare righe, quindi seleziona tutte (entrambe) le sottochiavi per creare colonne. Utilizza i dati Sampler per determinare se le sottochiavi devono creare dati numerici o caratteri.
Ora rinomina le colonne disattivando Stat Cols e riattivando Name Cols. Ritocca anche alcune altre cose, fai in modo che il tipo di modellazione per la valuta sia nominale. Ora, Nome, Soggetto sono descritti dopo l'immagine...
Changing column names, adding some meta dataModifica dei nomi delle colonne, aggiunta di alcuni metadati
Ci sono altre tre colonne di metadati: ora, nome, oggetto. Il tempo sembra molto utile; teniamo il tempo su ogni riga. Il nome e l'oggetto devono essere mantenuti solo come variabili di tabella; appariranno dopo OK:
The source script and the two table variables are part of the imported tableLo script di origine e le due variabili di tabella fanno parte della tabella importata
Fare clic sulle variabili della tabella per ricordare da dove proviene la tabella.
Per riprodurre questa importazione la prossima settimana, con i dati correnti della prossima settimana, prendi lo script sorgente e modifica nell'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 )
);