如何使用字典中的值创建循环函数?

时间:2019-07-09 14:53:58

标签: python file dictionary jupyter mean-square-error

我用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

谢谢。

1 个答案:

答案 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