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文件內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!

推薦閱讀: