我有一个没有标题的 csv 文件,带有 DateTime 索引。我想重命名索引和列名,但使用 df.rename() 仅重命名列名。漏洞?我的版本是 0.12.0
In [2]: df = pd.read_csv(r'D:\Data\DataTimeSeries_csv//seriesSM.csv', header=None, parse_dates=[[0]], index_col=[0] )
In [3]: df.head()
Out[3]:
1
0
2002-06-18 0.112000
2002-06-22 0.190333
2002-06-26 0.134000
2002-06-30 0.093000
2002-07-04 0.098667
In [4]: df.rename(index={0:'Date'}, columns={1:'SM'}, inplace=True)
In [5]: df.head()
Out[5]:
SM
0
2002-06-18 0.112000
2002-06-22 0.190333
2002-06-26 0.134000
2002-06-30 0.093000
2002-07-04 0.098667
原文由 Mattijn 发布,翻译遵循 CC BY-SA 4.0 许可协议
rename
方法采用适用于索引 值 的索引字典。您要重命名为索引级别的名称:
考虑这一点的一个好方法是列和索引是同一类型的对象(
Index
或MultiIndex
),您可以通过转置交换两者。这有点令人困惑,因为索引名称与列具有相似的含义,所以这里有更多示例:
可以看到index上的rename,可以把 值 改成1:
在重命名级别名称时:
注意:此属性只是一个列表,您可以将重命名作为列表理解/映射。