我用python创建了一个字典,该字典从本地计算机上的文件夹中提取各种文件。字典中的每个键代表不同的文件,因此当我运行例如:
d['file1']
运行上面一行的输出看起来像这样:
Date Total
01/02/2010 500
02/02/2010 400
03/02/2010 360
04/02/2010 170
我可以创建一个循环函数来为每个键从“总计”列中获取字典值,以便仅通过运行一次代码就可以输出赋予每个文件的均方误差?我想主要关注“总计”列,因为它将用于我要执行的数学功能。
我希望如果我的词典中有3个值,该函数将循环3次,然后将打印出均方误差总计以及文件名。即这样的输出
File 1 - Mean Square error is 89.1
File 2 - Mean Square error is 102.5
File 3 - Mean Square error is 111
谢谢。
答案 0 :(得分:1)
假设dict中的每个值都是一个数据帧,您可以简单地遍历该dict并使用pd.Series.mean
计算平均值:
d = {'file1': pd.DataFrame({'Total': [1, 2, 3]}),
'file2': pd.DataFrame({'Total': [4, 5, 6]})}
for file_name, df in d.items():
print('{} - Average is {}'.format(file_name, df['Total'].mean()))
输出
file1 - Average is 2.0
file2 - Average is 5.0