我正在使用python pandas来读取csv文件。 csv文件有一个日期时间列,其具有第二个精度" 9/1/2015 9:25:00 AM"但如果我在excel中打开,它只有微小的精度" 9/1 / 15 9:25"。而且,当我使用pd.read_csv()函数时,它只显示最高精度。有什么方法可以使用python解决问题吗?非常感谢。
答案 0 :(得分:0)
这是Excel的时间格式问题/理念。出于某种原因,微软更喜欢在用户显示器上隐藏秒和亚秒:甚至MSDOS的dir
命令都会被忽略。
如果我是你,我会使用Excel的format
操作并将其设置为显示秒数,然后将电子表格保存为CSV,并查看是否在其中放入任何内容以记录改进后的内容格式化。
如果这不起作用,您可以探索创建一个执行格式化的宏,或者使用IPC to Excel之一来命令它进行出价。
答案 1 :(得分:0)
进入"格式化单元格"并输入d/mm/yyyy h:mm:ss
作为自定义格式选项
编辑:不确定我是否完全理解您的问题。试试这个:用一行创建一个文本文件" 9/1/2015 9:25:00 AM",称之为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
即。 Pandas刚刚将列作为字符串(对象)读取,秒就在那里。
如果您想转换为时间戳,请致电pd.to_datetime
In [36]: pd.to_datetime(df[0])
Out[36]:
0 2015-09-01 09:25:00
Name: 0, dtype: datetime64[ns]
再次秒仍在那里。这是否回答了你的问题?