プログラミング経験
読み書き算盤の時代から読み書きプログラミングの時代になったと言われて久しくなりました。たくさんのプログラミング体験記がネットに存在しますが、多くは少しプログラミングをかじったことのある人や、他の言語を知っている人の記事です。そこで、本当にゼロから始める体験記を書こうと思います。
なぜpythonか
「初心者 プログラミング」で検索すると多くの言語がおすすめされています。Java、Ruby、PHP等どれをするのが正解か分かりません。私は漠然と人工知能やクオンツといったデータ解析に興味があったのでpythonを選びました。一人でする勉強はモチベーションの管理も難しいので、憧れやかっこよさで選ぶのもいいと思います。また、アルゴリズムトレード等ができるようになれば、お金も少しはいってくる
のではないかという下心もあります。
まずは株価のスクレイピング
プログラミングの最初の大きな課題として、何を目標にすればいいのか分からないということがあると思います。私はアルゴリズムトレードを最終的な目標として、プログラミングを学習していきたいと思います。まずは、データの取得方法ですが、株価を提供してくださっている株価データサイト(http://k-db.com/)というものがあります。今回はこちらを利用させていただきます。pythonで簡単にテーブルをスクレイピンするためにBeautifulSoup4とpandasというライブラリを使います。コマンドプロンプトで
1 |
pip install pandas |
pandasをダウンロードします。 pandasはpythonのデータ解析用ライブラリで、表などが扱いやすくなります。
1 2 |
import pandas as pd tables = pd.read_html('http://k-db.com/stocks/', flavor='bs4') |
pandasをダウンロードします。 pandasはpythonのデータ解析用ライブラリで、表などが扱いやすくなります。
一行目ではpandasを使えるようにpythonに読み込みます。
二行目は株価データサイトの株価がのっているページにアクセスしてtablesに格納します。なお、この方法はこちら(https://qiita.com/driller/items/0fe323dec5bb2f267c96)を参考にしました。
flavorの説明はまだよく分かっていないの
で、分かり次第追記します。。。
データをとってくるだけではつまらないので、この中から150円以下の株価をつけている株だけを抽出します。
1 2 |
df = tables[0] df[df.ix[:,5] <= 150] |
さきほど手に入れたデータはテーブルとして格納されているので、リスト型にいれなおします。
その後、5列目の現在値が150円以下の株を抽出します。
まずは、データのスクレイピングと簡単な抽出ができるようになりました。今後も勉強を続けて、もっと複雑なことができるようになりたいと思います。
コメント