【データの集め方講座】Githubを使用してデータを集める-Pythonで可視化-
はじめに
ごあいさつ
ご高覧いただきありがとうございます.
ソフトウェアエンジニアのKitaharaです.
本日はGitHubを使った株式情報の収集方法を解説します!
GitHubについて
GitHubとは
今回のテーマのGitHubですが, 普段は開発のソース管理に使うという方が多いのではないでしょうか?
知らない方のために公式による説明を置いておきます.
GitHubからデータを入手することは簡単
GitHubからデータを入手する方法は簡単です.
git cloneするとデータが手に入ります.
使うものを一通り説明したら例を見ていきましょう
使用するものの説明
GitHub
開発者向けのサイト
プロジェクトの管理をしながら仲間とコードを共有してソフトウェア開発を行うことができます.
多くのアプリケーションと連携することができます.
プロジェクトを検索することができる
他の人のコードを自分でも試してみることができます.
Python(3.8)
プログラミング言語のひとつです.
型宣言等が無く, 初心者にも扱いやすい言語だと言われています
近年Deep Learningのライブラリが豊富であることから注目を集めている人気の言語です
今回はバージョン3.8を使います.
データのプロジェクトに3.8で動かしてくださいと記載されているからです.
Pandas
Pythonのライブラリの一つ
データ解析を支援するライブラリでDataFrame, Seriesというデータ構造とそれに対する演算を提供している
他にもデータの取得やファイル形式にして出力したりすることができる
csv, csvファイル
csv(comma separated values)とはデータがカンマ区切りにされた構造のテキストファイルのこと
データ交換用のフォーマットとして広く用いられている
言語のバージョンと完成図
使用するOS
Ubuntu20.04を使います.
各言語のバージョン
使う言語はPython3です.
3.8を使うのでインストールしていない方はインストールしてください.
今回作るものの完成図
.
├── covid-19
│ ├── README.md
│ ├── data
│ │ ├── countries-aggregated.csv
│ │ ├── key-countries-pivoted.csv
│ │ ├── reference.csv
│ │ ├── time-series-19-covid-combined.csv
│ │ ├── us_confirmed.csv
│ │ ├── us_deaths.csv
│ │ ├── us_simplified.csv
│ │ └── worldwide-aggregate.csv
│ ├── datapackage.json
│ └── scripts
│ ├── process_us.py
│ ├── process_worldwide.py
│ ├── requirements.txt
│ └── update_datapackage.py
└── env
├── bin
│ ├── Activate.ps1
│ ├── activate
│ ├── activate.csh
│ ├── activate.fish
│ ├── easy_install
│ ├── easy_install-3.8
│ ├── f2py
│ ├── f2py3
│ ├── f2py3.8
│ ├── pip
│ ├── pip3
│ ├── pip3.8
│ ├── python -> python3.8
│ ├── python3 -> python3.8
│ └── python3.8 -> /usr/bin/python3.8
├── include
├── lib
│ └── python3.8
├── lib64 -> lib
├── pyvenv.cfg
└── share
└── python-wheels
GitHubからデータを取得
さっそくGitHubからデータを取得していきましょう.
今回はこのデータを取得してみることにします.
データの探し方はsign in と書かれた上部のボタンの左に入力欄があるのでそこにキーワードを入れて入力するとプロジェクトを探すことができます.
データの取得は下記の様に書きます.
ここでプロジェクトのurlが必要になるのでcodeと書かれたボタンを押してurlをコピーしておいてください.
# terminal
# プロジェクトを取得
$git clone url
そうするとプロジェクトを取得し始めます.
セットアップが無ければこれで終了なのですが, このプロジェクトはセットアップが必要とのことなので, 進めていきます
プロジェクトの取得が終わりましたら, Pythonのセットアップをしていきましょう. Python3.8が入っているか確認してください.
$ python3.8 --version # python3.8 があるか確認
$ sudo apt-get update
$ sudo apt install python3.8-venv
# envという名前の仮想環境をPython3.8で作成
$ python3.8 -m venv env
仮想環境が作れましたらプロジェクトの指定のライブラリをインストールします.
仮想環境にするとPythonのバージョンを指定する他にライブラリをまっさらにすることができるというメリットもあります.
# requirements.txtに書かれたしていのライブラリをインストール
pip install -r covid-19/scripts/requirements.txt
最後にデータを取得します.
process_us.py はPandasを使って表形式にして表示してくれるようです.
# ディレクトリが違うとエラーが起こるので注意
cd covid-19
python scripts/process_worldwide.py
# return
# ===============
# Working on basic time series
# ...
python scripts/process_us.py
# return
# ===============
# Working on Confirmed Cases
#
#
# Admin2 Date Case Country/Region Province/State
# 0 Autauga 2020-01-22 0 US Alabama
# 1 Autauga 2020-01-23 0 US Alabama
# 2 Autauga 2020-01-24 0 US Alabama
# 3 Autauga 2020-01-25 0 US Alabama
# 4 Autauga 2020-01-26 0 US Alabama
# ... ... ... ... ... ...
# 2473075 Weston 2022-01-26 1408 US Wyoming
# 2473076 Weston 2022-01-27 1426 US Wyoming
# 2473077 Weston 2022-01-28 1438 US Wyoming
# 2473078 Weston 2022-01-29 1438 US Wyoming
# 2473079 Weston 2022-01-30 1438 US Wyoming
# ...
おわりに
今回はGitHubを使ってデータを取得し保存する方法を解説しました!参考になったという方はぜひハートボタンを押していってください!
モチベーションに上がります!
記事内で不明な点等ございましたら気軽にご連絡ください.
Twitter: @kitahara_dev
email: kitahara.main1@gmail.com
参考文献
この記事が気に入ったらサポートをしてみませんか?