如何在多层列头DataFrame中将日期列设置为新的datetime索引
Pandas多级列索引操作实现方案
操作分为两步即可达到预期效果:
- 把日期列转换为datetime类型后设为行索引,同时移除原有的整数行索引和多余的日期数据列
- 清空多级列索引的
names属性,消除eqID、eqName的显示,保留两级列头本身
import pandas as pd # 假设你的原始DataFrame名为df # 1. 转换时间列为DatetimeIndex并设置为行索引 df = df.set_index(pd.to_datetime(df[('eqID', 'eqName')])).drop(columns=('eqID', 'eqName')) # 2. 清空多级列索引的名称,仅隐藏标识不修改列头本身 df.columns.names = [None, None]
说明:多级列索引的names属性对应各级列索引的显示名称,直接赋值为None即可隐藏名称,不会修改各级列头的实际值。你可以执行print(df)验证输出是否符合预期。
内容的提问来源于stack exchange,提问作者Sunny J
相关产品推荐
相关产品推荐

