これまでは、スクレイピングで株価を取得しようとしていましたが、pandas_datareaderを使えば簡単に株価を取得できることがわかりました。
今回は、pandas_datareaderを使って株価を取得し可視化する方法をご紹介します。
pandas_datareaderのインストール
Anacondaを使って、pandas-datareaderをインストールしていきます。
SearchPackagesからpandas_datareaderと検索して、赤枠のチェックボックスにチェックを入れます。その後右下に表示されるApplyボタンを押下してインストールを行います。

pandas_datareaderの使い方
pandas-datareader — pandas-datareader 0.10.0 documentation
- 使い方は簡単です。下記のコードだけでデータを取得できます。
- 下記は海外指数(S&P500)を取得するために
stock_code
を ^GSPCとしています。
# pandas_datareaderのインポート import pandas_datareader.data as dr #stock_codeを入力し、DataFrameにデータを格納 stock_code = '^GSPC' df = dr.DataReader(stock_code, 'yahoo', start, end)
- stock_codeには、ティッカーシンボルを指定します。ティッカーシンボルは下記のURLから確認できます。
SBI証券
pandas_datareaderで株価を取得しグラフ化する
注意
下記以降のサンプルコードでは、始値・終値・高値・安値等を取得していますが、可視化しているのは終値のみです
SampleCode
- S&P 500のデータを取得するには、下記のコードで実装できます。
- 最後の出力としては、データフレームの5行分だけ表示しています。
#ライブラリのインポート import datetime import pandas as pd import pandas_datareader.data as dr import plotly.express as px #データの期間を指定 start = datetime.datetime(2019, 1, 1) end = datetime.datetime(2020, 12, 31) #銘柄の指定・データフレームに格納 stock_code = '^GSPC' df = dr.DataReader(stock_code, 'yahoo', start, end) #データフレームの表示 df.head()

- plotly.expressを使って可視化をするには、先ほどのデータフレームを入力してやれば可視化できます。
# plotly.expressで線グラフを描画する px.line(data_frame=df,x=df.index,y='Close',title='S&P500')

Apple株価をダウンロードしてグラフ化する
- 下記のサンプルコードでは、アップルの株価を取得して、plotly.expressで線グラフにしています。
import datetime import pandas as pd import pandas_datareader.data as dr import plotly.express as px start = datetime.datetime(2019, 1, 1) end = datetime.datetime(2020, 12, 31) stock_code = 'AAPL' df = dr.DataReader(stock_code, 'yahoo', start, end) px.line(data_frame=df,x=df.index,y='Close',title='APPLE')

コメント