我有一个与csv文件和解析datetime相关的简单问题。
我有一个csv文件,如下所示:
YYYYMMDD, HH, X
20110101, 1, 10
20110101, 2, 20
20110101, 3, 30
我想使用pandas(read_csv)来读取它,并将它放在一个由datetime索引的数据帧中。到目前为止,我试图实现以下目标:
import pandas as pnd
pnd.read_csv("..\\file.csv", parse_dates = True, index_col = [0,1])
我得到的结果是:
X
YYYYMMDD HH
2011-01-01 2012-07-01 10
2012-07-02 20
2012-07-03 30
正如您在将HH转换为其他日期时看到的parse_日期一样。
有没有一种简单有效的方法可以将列“YYYYMMDD”与列“HH”正确组合起来,从而得到类似的结果?以下内容:
X
Datetime
2011-01-01 01:00:00 10
2011-01-01 02:00:00 20
2011-01-01 03:00:00 30
提前谢谢你的帮助。
如果将列表传递给
index_col
,则意味着您希望从列表中的列创建层次索引。此外,
parse_dates
关键字可以设置为True或list/dict。如果为True,则尝试将单个列作为日期进行分析,否则将组合列以分析单个日期列。总之,您要做的是:
我一直在做这个,所以我测试了不同的速度。 我发现的最快速度如下,大约比Chang She的解决方案快3倍,至少在我的情况下,考虑到文件解析和日期解析的总时间:
首先,使用pd.read_csv解析数据文件,而不解析日期。我发现它使文件读起来慢了很多。确保CSV文件的列现在是dataframe df中的列。然后:
相关问题 更多 >
编程相关推荐