.json-Datei zu TrenddiagrammenIch habe das JSON-Parser-Dokument von Craige und Xan verfolgt. Ich verwende JMP 13.
https://community.jmp.com/t5/JMP-Scripts/JSON-Parsing-Functions/ta-p/22253
Diese Frage mag für viele Menschen einfach sein. Ich bin ziemlich neu in der Skripterstellung und schätze Ihre Hilfe sehr.
Ich habe eine .json-Datei, die automatisch in einem Ordner erstellt wird, nachdem der Benutzer eine Auswahl im Internet getroffen hat (Chargennummer, Wafernummer, Parameter). Ich möchte ein Hintergrundskript ausführen, das diese .json-Datei automatisch übernimmt und auf eine Reihe von Ordnern zugreifen muss, um den Trend zu berechnen. Wie immer, wenn eine .json-Datei in diesem Ordner erstellt wird, sollte das Skript zur Berechnung ausgeführt werden.
Gibt es eine Möglichkeit zum Anhängen
include("$downloads/JSON Parser II.jsl");JSON:MAKETABLE(source);
zum Start und Anfang eines JSON-Skripts, ohne die JSON-Datei zu öffnen? Bin ich auf dem richtigen Pfad oder sollte ich die .json-Datei verwenden, um sie auf andere Weise zu implementieren?
Danke schön.
Betreff: .json-Datei zu TrenddiagrammenBearbeiten: zu viel los ... alle XML-Referenzen unten sollten stattdessen json sein ...
Die ursprüngliche Frage fragte auch nach der Verwendung eines Ordnernamens aus den XML-Daten.Dieser Ordner enthält eine CSV-Datei mit den eigentlichen Daten. Der Ordnername befindet sich in einer Spalte mit einem Namen wie Infoes.Name.Der gepunktete Name steht für einen verschachtelten Pfad in der XML-Struktur. Damit können Sie eine Datei im Ordner öffnen.
Ich empfehle, die Textimportansicht zu verwenden, um eine zu erstellen Quelle Skript, das Sie aus der importierten Tabelle kopieren können. Das Skript sieht ungefähr so aus (verwenden Sie Rechtsklick-> Bearbeiten auf Quelle um eine Kopie zu erhalten):
Text import preview source scriptText import preview source scriptVorschau-Quellskript für den Textimport
Open(
"C:\Users\v1\Desktop\stories.csv",
columns(
...
),
Import Settings(
...
)
)
Sie können den Dateinamen in Anführungszeichen in der zweiten Zeile durch eine JSL-Variable ersetzen, die den Namen der Datei enthält, die Sie tatsächlich benötigen. Ich weiß nicht, ob Ihre XML-Datei nur eine oder mehrere Dateien enthält. Sie könnten so etwas verwenden, um sie alle zu verarbeiten.
For( irow = 1, irow <= N Rows( dtXML ), irow++,
filename = dtXML:Infoes.Name[irow] || "\data.csv";
show(filename); // check the log to see if this looks right
dtCSV = Open( filename, columns(...), Import Settings(...) );
// do something with the data
// ... maybe dtCSV< // then close the table...
Close( dtCSV, "nosave" );
)
Sie müssen an das \ im Pfadnamen denken, das ich gerade vor den fest codierten data.csv-Namen eingefügt habe, und Sie müssen möglicherweise den tatsächlichen Dateinamen aus einer anderen Variablen abrufen. Da mehr als eine Datentabelle geöffnet ist, achten Sie darauf, eindeutige JSL-Variablennamen zu verwenden, um Verwirrung zu vermeiden, und stellen Sie sicher, dass Sie den JSL-Variablennamen verwenden, um die Verwendung von zu vermeiden aktuelle Datentabelle , da nicht ersichtlich ist, welche Tabelle aktuell ist.
Betreff: .json-Datei zu TrenddiagrammenWusste nicht, dass es 13 geworden ist, cool!
Betreff: .json-Datei zu TrenddiagrammenIn JMP 13 gibt es integrierte JSON-Parsing-Funktionen. Die Funktionen JSON to List, Load Text File und Open unterstützen den JSON-Dateityp.
Wenn Sie nur eine JSON-Datei in eine JMP-Datentabelle konvertieren möchten, können Sie die Open-Funktion mit der JSON-Option verwenden.
dt = Open( "$documents\test.json", JSON );
Bearbeiten: Die Open-Funktion sollte dasselbe tun wie die JSON:MAKETABLE-Funktion aus den JSON-Dienstprogrammen.
Betreff: .json-Datei zu TrenddiagrammenVerwenden Sie die LoadTextFile-Funktion, um die JSON-Datei zu öffnen und in zu speichern Quelle .
source = LoadTextFile("$desktop/x.json");