gpt4 book ai didi

python - 通过使用 for 循环循环每个数据帧来处理数据帧

转载 作者:行者123 更新时间:2023-11-30 21:52:51 25 4
gpt4 key购买 nike

我尝试使用 for 循环对我拥有的所有 Dataframe 执行一些处理,但没有任何改变。

代码:

import pandas as pd

a = pd.DataFrame({'a':[1,2,3,4,5,6,7],
'b':[8,9,0,1,2,3,4]})
b = pd.DataFrame({'c':[1,2,3,4,5,6,7],
'b':[8,9,0,1,2,3,4]})

li = [a,b]
for i in li:
'df_{}'.format(i) = i.rename(columns={'b':'test'})

a 和 b 输出:

    a   b
0 1 8
1 2 9
2 3 0
3 4 1
4 5 2
5 6 3
6 7 4

c b
0 1 8
1 2 9
2 3 0
3 4 1
4 5 2
5 6 3
6 7 4

预期输出:

    a   test
0 1 8
1 2 9
2 3 0
3 4 1
4 5 2
5 6 3
6 7 4

c test
0 1 8
1 2 9
2 3 0
3 4 1
4 5 2
5 6 3
6 7 4

谁能指出这里出了什么问题吗?我尝试在其他数据集上使用它,但没有任何变化,我不明白为什么。请帮忙。

顺便说一句,我想知道是否可以为它起一个不同的名字。以上编辑过吗?

最佳答案

重命名中使用inplace=True:

for i in li:
i.rename(columns={'b':'test'}, inplace=True) # Without assignment

输出:

a.head()
a test
0 1 8
1 2 9
2 3 0
3 4 1
4 5 2

b.head()
c test
0 1 8
1 2 9
2 3 0
3 4 1
4 5 2

关于python - 通过使用 for 循环循环每个数据帧来处理数据帧,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59816196/

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