首页 > 解决方案 > 如何访问 Pandas 中的重复列

问题描述

我在 excel 文件中有以下数据,列同名。

Parts  Tanning Tanning Tanning
A          23     46      46
B          32     35      48

如何访问 Tanning 第 2 列或第 3 列的数据?不使用列索引号,而仅使用标题。有没有办法不实际重命名标题?

我目前正在使用列索引号,但文件越来越大。

标签: pythonpandasdataframe

解决方案


但是在使用 read_excel 读取文件时,您可以将参数传递mangle_dupe_cols为 True(默认情况下为 False,默认情况下 pandas 删除重复列)

pd.read_excel('tmp.xlsx', mangle_dupe_cols=True)  

它会自动命名带有前缀的重复列<colname>.n(n 是该列的重复项)为

Tanning.0,Tanning.1,Tanning.2, ....

现在您可以通过输入前缀来访问它们 .n,其中 n 是前缀的重复名称计数Tanning

df['Tanning.2']

推荐阅读