循环发送多个Pandas DataFrames .to_csv()

Tip*_*ena 1 python pandas

我有五个DataFrames, ,df1df2df3,。df4df5

我可以使用以下方法分别保存每个:

df1.to_csv('~/Desktop/df1.tsv', index=False, header=False, sep='\t')
df2.to_csv('~/Desktop/df2.tsv', index=False, header=False, sep='\t')
...
Run Code Online (Sandbox Code Playgroud)

我可以在文件路径以保存Dataframe的变量名结尾的循环中执行此操作吗?

Avi*_*hek 5

当你说

DataFrame的名称

您的意思是保存数据框的变量的名称吗?那行不通。

但这里的东西,工作:

dfs = [df1, df2, df3, df4, df5]
for i, df in enumerate(dfs):
   df.to_csv(f'~/Desktop/df{i}.tsv', index=False, header=False, sep='\t')
Run Code Online (Sandbox Code Playgroud)

如果您想要唯一的名称

dfs = [df1, df2, df3, df4, df5]
names = ["apple", "bananna", "cherry", "drizz", "ebola"]
for name, df in zip(names, dfs):
   df.to_csv(f'~/Desktop/df{name}.tsv', index=False, header=False, sep='\t')
Run Code Online (Sandbox Code Playgroud)