首页 > 解决方案 > 在 for 循环中将多个数据帧写入单独的 .csv 文件

问题描述

我是 python 新手。我确信有简单的方法可以做到这一点,但我有点挣扎。我有 100 个名称为Lens1, Lens2, ...,的数据框Lens100。我想将每个数据帧写入 csv 文件。

Lens1.to_csv(path+"lens 1.csv", index=False)此命令用于Lens2和 Lens2.csv... 等等,直到Lens100另存为 Lens100.csv。所以100次...

我尝试了以下方法:

for key,j in range(101):
    x='Lens%s'%(j)
    x.to_csv(path+x+".csv")

它似乎不起作用,错误是

“str”对象没有属性“to_csv”。

任何帮助都感激不尽。

标签: pythonpandasfor-loop

解决方案


您收到此错误是因为循环xfor的不是数据帧,而是字符串。您不能通过str在名称中添加 a 来调用数据框;Python 会将其视为字符串。

您可以先将数据框存储在列表中dataframes,然后将数据框的名称存储在列表中name。然后,继续使用以下代码。

for j in range(101):
    x = dataframes[j]
    x.to_csv(path + name[j] + ".csv", index = False)

推荐阅读