Python使用CSV模块与Numpy计算股票数据均值和方差
本文介绍如何使用Python的csv模块读取CSV文件,并通过numpy模块计算指定列(如股价)的均值和方差。重点讲解利用next()跳过表头、类型转换及数据提取的关键步骤,提供完整代码示例,帮助开发者快速实现金融数据的统计分析。
Python处理CSV文件计算统计量
近期在处理Excel导出的CSV文件时,需要计算某银行历年股价的一系列统计指标,包括均值和方差。
该文件的结构较为简单,部分数据示例如下。

文件包含近七千行数据,核心任务是将其中的股价数据提取出来,存入数组,随后利用numpy模块计算所需的统计值。
此处使用csv模块处理文件,最终实现的代码如下。
代码实现与步骤解析
import csv
import numpy as np
with open('pingan_stock.csv') as csv_file:
row = csv.reader(csv_file, delimiter=',')
next(row) # 读取首行
price = [] # 建立一个数组来存储股价数据
# 读取除首行之后每一行的第二列数据,并将其加入到数组price之中
for r in row:
price.append(float(r[1])) # 将字符串数据转化为浮点型加入到数组之中
print(np.var(price)) # 输出均值
print(np.mean(price)) # 输出方差
首先调用csv的reader方法,其中的delimiter参数用于指定分隔符,默认值即为逗号,因此是否显式指定影响不大。
reader返回一个可迭代对象,需通过for循环进行遍历,部分row的输出结果如下。

执行next(row)旨在读取并跳过第一行标题(即['year','price']),因为后续代码需将字符型数据转换为浮点型以进行计算,若跳过此步,类型转换时将引发错误。在遍历row时,r[1]代表每行的第二个数据项,通过append方法将每一行的第二列数据依次存入数组。遍历结束后,所有第二列数据已成功存入price数组,且均为浮点型。获得该数组后,即可利用numpy模块的mean和var函数分别计算均值和方差。
至此,关于利用Python读取CSV文件并计算某一列均值和方差的介绍已完成,更多Python读取CSV文件相关内容可搜索本站往期文章或继续浏览后续文章,感谢支持。
本站声明
本文内容仅供参考,不代表本站观点。转载或引用请注明出处。如发现内容问题,请通过联系我们页面反馈。













