Mongdb讀取股票數(shù)據(jù)到Pandas分析

Mongdb讀取股票數(shù)據(jù)到Pandas分析

前言

接上一步將股票歷史數(shù)據(jù)存儲(chǔ)到Mongodb之后,接下來(lái)這部就是讀取數(shù)據(jù)并進(jìn)行分析,實(shí)現(xiàn)自己的想法。這篇小文章就結(jié)合自己的認(rèn)識(shí)來(lái)比較詳細(xì)的分析一下讀取步驟和心得。

數(shù)據(jù)讀取

import 三個(gè)庫(kù)import pandas as pd, import numpy as np, from pymongo import MongoClient

鏈接數(shù)據(jù)庫(kù):conn=MongoClient("localhost",27017), db=conn['test'], stockdb=db["stock_price"]

因?yàn)橹拔掖鎯?chǔ)是通過_id=code,所以查找的時(shí)候只要寫cursor=stockdb.find({"__id":"*stock code you want*"})這樣就可以把一只股票所有的歷史數(shù)據(jù)都查到。

用dataframe讀取數(shù)據(jù):cursor查到的是多個(gè)object,要通過list命令才能寫入dataframe,data=pd.DataFrame(list(cursor))

得到如下圖結(jié)構(gòu)的data,

data

我們所需的是第一列的數(shù)據(jù),因此加一句data= data["SH600000"][0]

又得到一個(gè)字典類型的數(shù)據(jù),所以在做一次dataframe格式化,就可以得到下圖的數(shù)據(jù)。


data1

做一下轉(zhuǎn)置data1.T就可以得到按日期索引的dataframe格式化數(shù)據(jù)。


data.T

接下去就可以選擇自己想要的數(shù)據(jù)進(jìn)行進(jìn)一步分析了。

后記:

? ? ? ? 從mongodb讀取dataframe數(shù)據(jù)之后,就可以進(jìn)行很多其他操作和分析,當(dāng)然還要對(duì)數(shù)據(jù)做一下其他的處理,比如要畫candle圖的話要么把每一列都獨(dú)立取出來(lái),要么把一天的全部數(shù)據(jù)寫在一個(gè)tuple里面。下一期,我會(huì)分享怎么用這些數(shù)據(jù)畫k線圖和量柱。


版權(quán)所有,謝絕轉(zhuǎn)載。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

推薦閱讀更多精彩內(nèi)容