我有一张从 CSV 文件导入 DataFrame 的数据表。
数据包含大约 10 个分类字段、1 个月列(日期时间格式),其余为数据系列。
如何将日期列转换为跨列轴的索引?
您可以使用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
我有类似的问题,我刚刚通过 reset_index 解决了。但是您可以使用 set_index 或 reset_index:
df_ind = df.set_index(['A', 'B'])
或者
df.reset_index(level=0, inplace=True)
如果提前不知道日期列的名称,需要根据数据中的时间序列列自动设置索引
df.set_index((df.select_dtypes(include=[np.datetime64]).columns).tolist())