如何将 .csv 文件中的数据转换为 NumPy 数组并使用统计数据来查找数据的平均值? [复制]

Posted

技术标签:

【中文标题】如何将 .csv 文件中的数据转换为 NumPy 数组并使用统计数据来查找数据的平均值? [复制]【英文标题】:How do I convert data from .csv file into a NumPy array and use statistics to find the mean of the data? [duplicate] 【发布时间】:2019-09-11 06:08:47 【问题描述】:

我想将 .csv 文件中的数据转换为 NumPy 数组,然后求数据的均值。

import csv
import numpy as np
import statistics as stat
with open('pima-indians-diabetes.csv') as csvfile:
    readCSV = csv.reader(csvfile, delimiter=',')
    for row in readCSV:
        x = np.array(row[1])
        z = stat.mean(x)
        print(z)

【问题讨论】:

numpy 应该有自己的函数来读取 .csv 或 .tab 数据。 使用numpy.loadtxt 和delimiter=',' 【参考方案1】:

numpy 数组有一个内置的 mean 方法。

>>> import numpy
>>> data = [3, 6, 3, 5, 3, 2]
>>> numpy.array(data).mean()
3.6666666666666665

要获取 csv,请参阅 genfromtxt 函数:https://docs.scipy.org/doc/numpy/reference/generated/numpy.genfromtxt.html

【讨论】:

我尝试使用 NumPy 方法求平均值,但出现错误“无法使用灵活类型执行归约”。 感谢 Matt VE,这解决了我的问题。

以上是关于如何将 .csv 文件中的数据转换为 NumPy 数组并使用统计数据来查找数据的平均值? [复制]的主要内容,如果未能解决你的问题,请参考以下文章

如何转换numpy子数组的dtype?

将 numpy 数组转换为 pyspark 中的 DataFrame 以导出为 csv

将数据从CSV转换为numpy数组时出错

为啥将 numpy 数组转换为 csv 文件不显示属性名称,而是将第一行值作为属性名称?

如何将 CSV 文件中的数据加载到 numpy 数组中[重复]

Numpy加载CSV - ValueError:无法将字符串转换为float