python-3.x - 如何计算csv文件中列内的平均值?
问题描述
我正在尝试查找 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() 函数
这是一些用于计算行平均值的伪代码:
import numpy as np
for line in csv_file:
mean = np.mean(line)
推荐阅读
- azure-active-directory - 办公室插件 Office.context.auth.getAccessTokenAsync 错误 13004
- c# - 如何在 if 语句中获取字符串?
- batch-file - 通过winrar压缩一个SQL备份文件
- swift - 'init()' 不可用 MusicKit
- r - RMarkdown:如何导出和导入代码块?
- python - python:遍历一个文件,每一行都有列表列表,在每一行找到列表的长度
- tensorflow - Tensorflow JS 模型拟合立即完成,无需执行任何操作
- java - 必应搜索 API 未在 Android 中返回结果
- django - 如何将命令行参数传递给我的 Python manage.py shell 脚本?
- javascript - 与 react chartjs 一起使用时出现 Rest api / json 错误