pandas 从列名中删除某些单词

wsxa1bj1  于 2023-01-07  发布在  其他
关注(0)|答案(2)|浏览(120)

我已经将一个包含两个分类变量Name和Year的数据集转换为哑变量,结果得到了433列,我想知道是否有一种方法可以删除单词“Name_”和“Year_”,而不必手动重命名它们。
我看到的唯一结果是手动重命名所有列。有没有一种方法可以做到这一点,比如从文本中的字符串/URL链接中删除某些关键字?

ig9co6j1

ig9co6j11#

使用正则表达式:

df.columns = df.columns.str.replace('^(Name|Year)_', '', regex=True)
vhmi4jdf

vhmi4jdf2#

如果使用正则表达式可能会更简洁,但这应该可以工作:

out = df.rename(columns=lambda x: x[5:] if x.startswith("Name_") or x.startswith("Year_") else x)

相关问题