gpt4 book ai didi

python - 遍历列并根据规则重命名

转载 作者:行者123 更新时间:2023-11-30 22:56:56 24 4
gpt4 key购买 nike

在以下代码片段中,我尝试将某些列(包含托管 session )重命名为托管 session [日期]。这就是当我打印所有 i 时发生的情况。但是,它不会将其保存到df

all_users_sheets_hosts = []

for f in glob.glob("./users-export-*.xlsx"):
df = pd.read_excel(f)
all_users_sheets_hosts.append(df)
j = re.search('(\d+)', f)
for i in df.columns.values:
if 'Hosted Meetings' in i:
i = ('Hosted Meetings' + ' ' + j.group(1))

最佳答案

迭代器i是数组值的副本,而不是指针。解决此问题的一种方法是通过索引而不是值本身来枚举:

for i, val in enumerate(df.columns.values):
if 'Hosted Meetings' in val:
df.columns[i] = ('Hosted Meetings' + ' ' + j.group(1))

无论如何,它很好地说明了更实用的风格的优点。在您的情况下,您可以将这些列视为 str 类型的 pandas 系列,因此您可以在其上使用矢量化的 replace,在一条语句中重命名您的列:

df.columns = df.columns.str.replace('.*Hosted Meeings.*', 
'Hosted Meetings' + ' ' + j.group(1))

关于python - 遍历列并根据规则重命名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36880476/

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