gpt4 book ai didi

Python:如何在将名称用作字符串的同时迭代数据框?

转载 作者:太空宇宙 更新时间:2023-11-03 13:35:07 25 4
gpt4 key购买 nike

我有三个不同的 Pandas 数据帧

df_1
df_2
df_3

我想遍历数据帧,进行一些计算,并使用数据帧的 name 存储输出。换句话说,像这样

for my_df in [df_1, df_2, df_3]:
my_df.reset_index(inplace=True)
my_df.to_csv('mypath/' + my_df +'.csv')

预期的输出文件:

'mypath/df_1.csv''mypath/df_2.csv''mypath/df_3.csv'

我很难这样做,因为 df_1 是一个对象,而不是一个字符串。有什么想法吗?

谢谢!

最佳答案

另一个更通用的解决方案是使用列名创建 dict 然后通过 items() 循环:

d = {'df_1':df_1,'df_2':df_3, 'df_3':df_3}
for k, my_df in d.items():
my_df.reset_index(inplace=True)
my_df.to_csv('mypath/' + k +'.csv')

另一种可能的解决方案是使用另一个带有数据帧名称的list,然后枚举并按位置获取name的值:

names = ['a','b','c']
print ({names[i]: df for i, df in enumerate([df_1, df_2, df_3])})

关于Python:如何在将名称用作字符串的同时迭代数据框?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41287310/

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