我使用python的熊貓閱讀csv文件。 csv文件有一個日期時間列,它具有「9/1/2015 9:25:00 AM」的第二個精度,但是如果我在Excel中打開,它只有精確的「9/1/15 9:25」精度。而且,當我使用pd.read_csv()函數時,它只顯示最高精度。有什麼辦法可以用python解決這個問題嗎?非常感謝。使用Python更改CSV數據列格式
回答
這是的Excel格式問題/理念的時間。出於某種原因,微軟更喜歡在用戶顯示器上隱藏秒和秒秒:即使MSDOS的dir
命令也省略了秒。
如果我是你,我會使用Excel的format
操作並將其設置爲顯示秒數,然後將電子表格保存爲CSV並查看它是否將任何內容記錄到記錄改進的格式。
如果不工作,你可能會探討建立一個宏它執行格式化,或使用IPC的一個到Excel指揮它做您的出價。
Excel不會在CSV文件中保存任何內容以指示格式。它具體告訴你格式化將會丟失,並以此格式保存。 Excel可能會將日期時間值更改爲「42293.0037430556」之類的值,但這同樣很煩人。 – Rejected
進去「單元格格式」,進入d/mm/yyyy h:mm:ss
作爲您的自定義格式選項
編輯:不知道我完全理解你的問題。試試這個:用一行「2015/9/1 9:25:00」創建一個文本文件,稱之爲test.csv
。現在做df = pd.read_csv('test.csv', header=None)
。如果您有df[0]
打印列,你應該看到這一點:
In [35]: df[0]
Out[35]:
0 9/1/2015 9:25:00 AM
Name: 0, dtype: object
即熊貓剛剛讀列作爲字符串(對象)和秒都在那裏。
如果你想轉換爲時間戳,調用pd.to_datetime
In [36]: pd.to_datetime(df[0])
Out[36]:
0 2015-09-01 09:25:00
Name: 0, dtype: datetime64[ns]
再次秒仍然存在。這回答了你的問題了嗎?
嗨,我有90000 +這樣的文件。我不太可能使用此功能來手動更改格式。有沒有辦法讓我直接調用pd.read_csv()函數來顯示秒精度的時間?謝謝。 –
- 1. 格式化數據爲.csv使用python
- 2. 使用變更表格修改列數據格式添加列
- 3. Python格式和更改excel數據
- 4. 使用XSLT更改數據格式
- 5. 更改格式CSV Matlab的
- 6. 更改列數據類型和格式
- 7. 如何修改使用python從csv調用返回的數據格式
- 8. python,將json格式列表更改爲數據幀
- 9. 使用更改模式到CSV csv
- 10. 更改列數字格式
- 11. 使用python將寬格式csv轉換爲長格式csv
- 12. 更改數據格式
- 13. Apache POI如何使用條件格式更改數據格式
- 14. CSV數據文件(列更改訂單)
- 15. 使用Python解析和重新格式化CSV /文本數據
- 16. 試圖更改列表格式在Python
- 17. 使用PHP從MySQL數據庫中更改CSV格式的文件
- 18. Python的修改CSV數據
- 19. Excel更改使用宏的列格式
- 20. python csv - 導出數據和格式顏色,文本格式等
- 21. 更改sql表格數據格式
- 22. 使用python更改csv中的單元格
- 23. 轉換CSV數據格式
- 24. 複製CSV值更改格式
- 25. 更改日期格式時到csv
- 26. 更改日期數據表中數據列的列數據格式
- 27. 將行添加到CSV文件而不更改其格式(Python)
- 28. 在python中如何更改csv中的日期格式?
- 29. 如何更改日期格式的csv在Python 3
- 30. 如何更改Python中寫入函數的數據格式?
你確定這是一個CSV的問題,而不是一個Excel格式的問題?默認情況下,當Excel打開一個CSV,它會轉換datetime值(相當煩人),然後進行格式化與它的「日期」的風格,是MM/DD/YYYY HH:MM AM/PM。嘗試改變格式爲「YYYY-MM-DD HH:MM:SS.000」 – Rejected
你能告訴你如何真正以csv看起來(csv檔案也許前幾行),然後您正在使用的代碼。 –