我有一个从CSV文件导入DataFrame的数据表。
数据包含大约10个分类字段,1个月列(日期时间格式),其余为数据系列。
如何将日期列转换为跨列轴的索引?
答案 0 :(得分:26)
您可以使用set_index
:
df.set_index('month')
例如:
In [1]: df = pd.DataFrame([[1, datetime(2011,1,1)], [2, datetime(2011,1,2)]], columns=['a', 'b'])
In [2]: df
Out[2]:
a b
0 1 2011-01-01 00:00:00
1 2 2011-01-02 00:00:00
In [3]: df.set_index('b')
Out[3]:
a
b
2011-01-01 1
2011-01-02 2
答案 1 :(得分:4)
我有类似的问题,我刚刚通过reset_index解决了。但您可以使用set_index或reset_index:
ind_df=df.set_index(['A', 'B'])
df.reset_index(level=0, inplace=True)
答案 2 :(得分:3)
如果您不知道日期列的名称,需要根据数据中的时间序列列自动设置索引
df.set_index((df.select_dtypes(include=[np.datetime64]).columns).tolist())