設置 CSV 導入默認日期時間格式我在這裡使用了腳本的修改版本合併多個 txt 或 csv 文件導入多個(1000 個)CSV 文件。 問題是它會導入 MM/DD/YY 格式的任何日期,如果您不住在美國,這意味著日期會在正確和錯誤之間翻轉。
我發現的唯一解決方案是您可以在創建臨時文件來保存數據時指定導入設置:
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 )
)
);
這似乎有點倒退,就好像日期字段的名稱發生變化它將恢復為 MM/DD/YY!
我已經摸索了大約一個半小時(如果你是美國人,則為 30:01),但找不到更好的方法來做到這一點......
回复:設置 CSV 導入默認日期時間格式歡迎!
如果您有權訪問 JMP 14 並打開 1000 個 CSV,請查看多文件導入。 它可能會快得多,因為它使用線程一次打開多個文件。
回复:設置 CSV 導入默認日期時間格式感謝您的全面回复! 我必須仔細研究您發布的解決方法,以了解如何將其合併到我的腳本中回复:設置 CSV 導入默認日期時間格式
幾個答案,沒有一個是完美的:
- 在 JMP 14 中,您可以使用多個文件導入,這會將數據保留為字符格式。 然後,您可以使用適當的數據格式手動或通過腳本將列格式從字符更改為數字。
- JMP 的文本文件導入會查看 a 列中的所有日期,以查找 > 12 的日期來推斷正確的格式;目前回退時間是 mm-dd-yyyy。 我會考慮創建一個偏好。
首先,創建一個包含不明確列的表:
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 lighteddate1 為 d/m/y,date2 為 m/d/y,源腳本突出顯示
源腳本看起來像這樣
High lighting the two date formatsHigh lighting the two date formats高亮顯示兩種日期格式
吉林省能編輯源腳本,替換所需的格式。 然後運行修改後的腳本並添加一些列來顯示月份:
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/ydate2 現在是 d/m/y
回复:設置 CSV 導入默認日期時間格式除了在將數據導入其中之前使用每個列設置創建一個全新的臨時文件之外,我仍然沒有找到一個好的解決方案。
有誰知道如何修復此文件導入錯誤?
回复:設置 CSV 導入默認日期時間格式事實上,該解決方案不起作用:例如,保存為“10/1/2018 9:50:46”的日期將作為“01/10/2018 09:50:46”導入到 JMP 中。