【发布时间】:2019-09-15 15:38:28
【问题描述】:
我有一个 df,我需要将 40 个列名重命名为空字符串。这可以通过使用.rename() 来实现,但我需要提供dict 中的所有列名,需要重命名。我正在寻找一些更好的方法来通过一些模式匹配来重命名列。在列名中找到 NULL/UNNAMED 的任何位置,将其替换为空字符串。
df1:原始 df(在实际 df 中,我有大约 20 列作为 NULL1-NULL20 和 20 列作为 UNNAMED1-UNNAMED20)
NULL1 NULL2 C1 C2 UNNAMED1 UNNAMED2
0 1 11 21 31 41 51
1 2 22 22 32 42 52
2 3 33 23 33 43 53
3 4 44 24 34 44 54
想要的输出df:
C1 C2
0 1 11 21 31 41 51
1 2 22 22 32 42 52
2 3 33 23 33 43 53
3 4 44 24 34 44 54
这可以通过
来实现df.rename(columns={'NULL1':'', 'NULL2':'', 'UNNAMED1':'', 'UNNAMED2':''}, inplace=True)
但我不想创建包含 40 个元素的长字典
【问题讨论】:
标签: python python-3.x pandas