gpt4 book ai didi

python - 更改多个列名称

转载 作者:太空狗 更新时间:2023-10-30 02:37:54 25 4
gpt4 key购买 nike

假设我有一个包含这样列名称的数据框:

['a','b','c','d','e','f','g'] 

我想将名称从“c”更改为“f”(实际上是将字符串添加到列名中),因此整个数据框列名将如下所示:

['a','b','var_c_equal','var_d_equal','var_e_equal','var_f_equal','g']

好吧,首先我做了一个函数,用我想要的字符串更改列名:

df.rename(columns=lambda x: 'or_'+x+'_no', inplace=True)

但现在我真的很想了解如何实现这样的东西:

df.loc[:,'c':'f'].rename(columns=lambda x: 'var_'+x+'_equal', inplace=True)

最佳答案

您可以使用 list comprehension对于这样的:

代码:

new_columns = ['var_{}_equal'.format(c) if c in 'cdef' else c for c in columns]

测试代码:

import pandas as pd


df = pd.DataFrame({'a':(1,2), 'b':(1,2), 'c':(1,2), 'd':(1,2)})
print(df)
df.columns = ['var_{}_equal'.format(c) if c in 'cdef' else c
for c in df.columns]
print(df)

结果:

   a  b  c  d
0 1 1 1 1
1 2 2 2 2

a b var_c_equal var_d_equal
0 1 1 1 1
1 2 2 2 2

关于python - 更改多个列名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48734871/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com