我是 Python 新手,我正在尝试获取 csv 文件的每个(列或行)的平均值,然后选择高于其列(o 行)平均值的两倍的值。我的文件有数百列,并且具有如下浮点值:
845.123,452.234,653.23,...
432.123,213.452.421.532,...
743.234,532,432.423,...
Run Code Online (Sandbox Code Playgroud)
我已经尝试对我的代码进行多次更改以获得每一列的平均值(单独),但目前我的代码是这样的:
def AverageColumn (c):
f=open(csv,"r")
average=0
Sum=0
column=len(f)
for i in range(0,column):
for n in i.split(','):
n=float(n)
Sum += n
average = Sum / len(column)
return 'The average is:', average
f.close()
csv="MDT25.csv"
print AverageColumn(csv)
Run Code Online (Sandbox Code Playgroud)
但我总是收到类似“f 没有 len()”或“'int' 对象不可迭代”之类的错误...
如果有人告诉我如何获得每一列(或行,如您所愿)的平均值,然后选择高于其列(或行)平均值的两倍的值,我将不胜感激。我宁愿不将模块作为 csv 导入,而是根据您的喜好。谢谢!