Festlegen des CSV-Import-Standardformats für Datum und UhrzeitIch habe hier eine modifizierte Version des Skripts verwendet Kombinieren Sie mehrere TXT- oder CSV-Dateien um mehrere (Tausende) CSV-Dateien zu importieren. Das Problem besteht darin, dass jedes Datum im MM/TT/JJ-Format importiert wird. Wenn Sie nicht in den USA leben, bedeutet dies, dass die Daten zwischen korrekt und falsch wechseln.
Die einzige Lösung, die ich gefunden habe, besteht darin, dass Sie die Importeinstellungen angeben können, wenn Sie die temporäre Datei erstellen, um die Daten zu speichern:
dt=open(fileopen,private,
New Column( "CycleStartDate&Time",
Numeric,
"Continuous",
Format( "d/m/y h:m:s", 22, 0 ),
Input Format( "d/m/y h:m:s", 0 )
),
New Column( "CycleEndData&Time",
Numeric,
"Continuous",
Format( "d/m/y h:m:s", 22, 0 ),
Input Format( "d/m/y h:m:s", 0 )
)
);
Dies scheint eine etwas rückständige Vorgehensweise zu sein, denn wenn sich der Name des Datumsfelds ändert, wird es wieder auf MM/TT/JJ zurückgesetzt!
Ich kratze mir seit ungefähr anderthalb Stunden (oder 30:01, wenn Sie Amerikaner sind) den Kopf, aber ich kann keinen schöneren Weg finden, dies zu tun ...
Betreff: Festlegen des Standard-Datums-/Uhrzeitformats für den CSV-ImportWillkommen!
Wenn Sie Zugriff auf JMP 14 haben und Tausende von CSVs öffnen, werfen Sie bitte einen Blick auf den Import mehrerer Dateien. Es ist wahrscheinlich viel schneller, da es Threading verwendet, um mehrere Dateien gleichzeitig zu öffnen.
Betreff: Festlegen des Standard-Datums-/Uhrzeitformats für den CSV-ImportVielen Dank für die umfassende Antwort! Ich muss mich mit der von Ihnen geposteten Problemumgehung auseinandersetzen, um zu verstehen, wie ich sie in mein Skript integrieren kannBetreff: Festlegen des Standard-Datums-/Uhrzeitformats für den CSV-Import
Mehrere Antworten, keine perfekt:
- In JMP 14 können Sie den Import mehrerer Dateien verwenden, wodurch die Daten im Zeichenformat verbleiben. Anschließend können Sie das Spaltenformat mit dem entsprechenden Datenformat manuell oder mit Skripten von Zeichen auf numerisch ändern.
- In JMP 13 sollte die Angabe des Spaltenformats funktionieren.
- Der Textdateiimport von JMP untersucht alle Datumsangaben in der Spalte a, um einen Tag > 12 zu finden und daraus das richtige Format abzuleiten. Derzeit ist der Fallback MM-TT-JJJJ. Ich werde versuchen, dafür eine Präferenz zu schaffen.
- Hier ist eine Problemumgehung, die helfen könnte.
Erstellen Sie zunächst eine Tabelle mit einer mehrdeutigen Spalte:
filename = savetextfile(
"$temp/date.csv","date1,date2
31/10/2018 23:59:59,2/5/2018 00:00:00
1/9/2018 00:00:00,3/7/2018 00:00:00"
);
// date1 is clearly mm/dd/yy
// date2 is not clear, there are no days > 12
dt = open(filename);
// examine what happened
dt<dt<<newcolumn("month2",formula(month(date2)));
date1 is d/m/y, date2 is m/d/y, source script high lighteddate1 is d/m/y, date2 is m/d/y, source script high lightedDatum1 ist T/M/J, Datum2 ist M/T/J, Quellskript hervorgehoben
Das Quellskript sieht so aus
High lighting the two date formatsHigh lighting the two date formatsHervorheben der beiden Datumsformate
JSL dürfen Bearbeiten Sie das Quellskript und ersetzen Sie es durch das gewünschte Format. Führen Sie dann das geänderte Skript aus und fügen Sie einige Spalten hinzu, um den Monat anzuzeigen:
script = dt<close(dt,"nosave"); // no longer needed
// change m/d/y to d/m/y
substituteInto(script,"m/d/y h:m:s","d/m/y h:m:s");
// re-open the table with the modified script
dt = eval(script);
// examine what happened
dt<dt<<newcolumn("month2",formula(month(date2)));
date2 is now d/m/ydate2 is now d/m/yDatum2 ist jetzt d/m/y
Betreff: Festlegen des Standard-Datums-/Uhrzeitformats für den CSV-ImportIch habe immer noch keine gute Lösung dafür gefunden, außer mit jeder Spalteneinrichtung eine ganz neue temporäre Datei zu erstellen, bevor ich die Daten hinein importiere.
Weiß jemand, wie man diesen Fehler beim Dateiimport beheben kann?
Betreff: Festlegen des Standard-Datums-/Uhrzeitformats für den CSV-ImportTatsächlich funktioniert diese Lösung nicht: Beispielsweise wird das als „01.10.2018 9:50:46“ gespeicherte Datum als „10.01.2018 09:50:46“ in JMP importiert.