繁体   English   中英

如何用列表替换熊猫数据框中的列名?

[英]How to replace columns name in pandas dataframe with a list?

我有一个非常宽的数据框,其中包含超过 1000 列,每个列名按顺序排列为数字 1-1000(因此第二列是 2,第三列是 3,依此类推)。 我有一个列名列表,它们是位置的,这意味着如果我可以按照我拥有的顺序获取我的列列表,并且只需用它替换数据框的整个索引行,我就会得到我需要的东西。

这可能吗?

IIUC,您需要:

import numpy as np
import pandas as pd
df = pd.DataFrame(np.random.rand(3,3))
df.columns = ['Col A', 'Col B', 'Col C']
print(df)

结果:

      Col A     Col B     Col C
0  0.497856  0.373009  0.719566
1  0.126019  0.823805  0.570156
2  0.588741  0.405167  0.557865

替代解决方案:

df.rename(columns={0: 'Col A', 1: 'Col B', 2: 'Col C'}, inplace=True)

如果df.columns = pd.Index(list_of_names)不起作用,您可以使用:

df = df.rename(dict(zip(df.columns, list_of_names)), axis=1)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM