Python 3.x 如何计算csv文件中列内的平均值?

Python 3.x 如何计算csv文件中列内的平均值?,python-3.x,csv,average,Python 3.x,Csv,Average,我试图找到csv文件中某一列中数字的平均值。我搞不懂如何计算这列的长度。它不断给我错误的说法 line 20, in average_magnitude size = len(row[2]) TypeError: 'int' object is not subscriptable 我试着划船 但这对我也不起作用 def average_magnitude(file_name): magnitude = 0 row = 0 size = len(row[2])

我试图找到csv文件中某一列中数字的平均值。我搞不懂如何计算这列的长度。它不断给我错误的说法

line 20, in average_magnitude
    size = len(row[2])
TypeError: 'int' object is not subscriptable
我试着划船

但这对我也不起作用

def average_magnitude(file_name):

    magnitude = 0
    row = 0

    size = len(row[2])
    for each_line in file:
        each_line = each_line.strip()
        row = each_line.split(",")
        for each_num in file:
            s += each_num
        
        magnitude = s/size
柱是垂直的(从上到下);获得此平均值的一种方法是迭代所有行,获取该行中的特定值,并将其相加,然后除以数组的长度。数组的长度等于任何单个列的长度

下面是一些用于计算列平均值的伪代码:

sum = 0
for line in csv_file:
  sum+=line[1]
return sum/len(csv_file)
  
如果您想获得某行的值(从左到右),那么可以对任何类似数组的对象使用numpy的内置mean()函数

以下是一些用于计算行平均值的psuedo代码:

import numpy as np

for line in csv_file:
  mean = np.mean(line) 

有一个处理CSV文件的模块;想猜一下它的名字吗?如果你用
numpy
pandas
读取csv,这应该很简单,因为这两个模块都有内置的方法来计算给定列的平均值
为0意味着它是一个整数
size=int(行[2])
将按预期生成错误。你在期待什么?