python - 在 Python 中读取 CSV 文件,获取列(平均)
问题描述
您如何读取 csv 文件中的每一行并平均每列?
CSV 文件将如下所示
15 1 2 3
30 5 12 5
40 2 3 10
结果应该是列的平均值
28.33
2.67
5.66
6
类似的东西
我尝试了很多解决方法,但我似乎无法让它工作
import csv
with open(test_file, "r") as input_file:
reader = csv.reader(input_file)
for row in reader:
print(row[0])
total = 0
avg = 0
for num in row:
print(row[0][num])
total += int(num)
avg = total/len(num)
print(avg)
print(row)
解决方案
可能最容易使用 pandas
import pandas as pd
df = pd.read_csv('file.csv', sep=','(or ';'), headers=0 (if no headers))
df.mean(axis=0)
给出以下输出:
0 28.333333
1 2.666667
2 5.666667
3 6.000000
推荐阅读
- tabulator - Tabulator - rowContextMenu - 如何获取执行鼠标右键单击的单元格
- java - Android Studio:在另一个活动中单击按钮时更新片段列表
- java - Java 无法解析“HttpResponse”中的方法“getEntity”
- java - 如何从适配器类 Android STUDIO 启动片段
- express - 如何使用 Express Validator 通配符验证对象和子对象数组
- postgis - Postgis - 从一组重叠多边形中获取所有唯一区域
- reactjs - 如何将状态更新为特定值?
- python - Scrapy:抓取链接/锚点+将每行1个放在其他页面元素旁边(标题标签/ H1标签/等......)
- swift - 从导航栏打开时,SwiftUI Sheet 仅工作一次
- vb.net - 按下空格键时如何清除文本框的所有内容?VB.Net