我有多个数据帧(例如df0,df1,df2,df3),我需要迭代,但数据帧的数量是任意的,并且当我在不同的数据集上运行此脚本时,它是可变的。我需要生成这些数据帧的列表(使用循环):
dfs = [df0,df1,df2,df3]
到目前为止,这就是我所拥有的......
dfs = []
for i in range(4):
dfs.append('df'+str(i))
然而,这会返回:
dfs = ['df0', 'df1', 'df2', 'df3']
有没有办法将这个字符串列表转换为数据帧列表?还是另一种写循环的方法呢?
目标是创建可打印的Excel文档。我需要一个包含24列和任意行数的数据帧(从5个条目到超过100个)。因为它需要是可打印的,所以我必须将数据帧拆分成多个数据帧,每个数据帧都有列标签,每页3行,每页有一个数据帧。由于我需要生成的数据帧数量取决于原始数据帧中的行数,因此它涉及在循环中唯一地生成数据帧。这是我用来生成数据帧的代码:
og = pd.ExcelFile(file).parse('Sheet1')
sheets = int(len(og)/3)
if (len(og)%3) != 0:
sheets = sheets + 1
frames = [og.loc[i*3:(3*i + 2)] for i in range(sheets)]
for i in range(len(frames)):
exec('df' +str(i)+ '= frames[i].transpose()')