我有一个名为data.csv
的csv文件,例如
TS;val
10:00;0.1
10:05;0.2
10:10;0.3
10:15;0.4
我用这个脚本读取这个csv文件
#!/usr/bin/env python
import pandas as pd
if __name__ == "__main__":
yyyy = 2013
mm = 2
dd = 1
df = pd.read_csv('data.csv', sep=';', parse_dates=[0], index_col=0)
print(df)
我明白了
val
TS
2013-06-17 10:00:00 0.1
2013-06-17 10:05:00 0.2
2013-06-17 10:10:00 0.3
2013-06-17 10:15:00 0.4
我想将每个DateTimeIndex的日期更改为2013-02-01
val
TS
2013-02-01 10:00:00 0.1
2013-02-01 10:05:00 0.2
2013-02-01 10:10:00 0.3
2013-02-01 10:15:00 0.4
做这件事最简单的方法是什么?
时间戳有一个
replace
方法(就像datetimes一样):因此,请将索引设置为:
值得一提的是,您可以将} ,这可能对您更有意义:
date_parser
函数传递给^{提供
date_parser
我看到了两种方法。第一个是最简单的:使用
'string'.split(' ')
。对于字符串bb jj
,它将返回一个包含2个元素bb
和jj
的列表,因此只需获取第一个元素。第二个选项是,从字符串创建一个datetime对象,并按您需要的方式重新格式化它。我认为这个办法更好。如果明天你想换一种格式,这会容易得多。 为此,请使用此处记录的
strptime
函数:http://docs.python.org/2/library/datetime.html#datetime.datetime.strptime然后要从datetime对象返回字符串,只需使用strftime function。这里提供所有不同的格式:http://docs.python.org/2/library/datetime.html#strftime-and-strptime-behavior
相关问题 更多 >
编程相关推荐