PDFから表データを抽出する。
株価が収益性を反映していると考えれば、収益が増えるには、国民の消費が増える必要があるため、雇用は重要であり、その中でも、雇用統計の先行指標となる「新規失業保険申請件数」は最重要である。
そんな新規失業保険申請件数を「ささっ」と確認するツールを作ってみた。
このツールでは、下記の様に
左の米国労働省のPDFのテーブルから、右のようにデータを抽出できます。
株関連の情報をチェックしながら、Pythonスキルも上げるのだ!
Pythonのプログラムスキル的にできる事は下記の通り。
Pythonのプログラムスキル的にできる事。
・PDFファイルからデータ抽出
・Web上の情報からデータ取得(PC内のデータでもOK)
・Web上のファイル更新日の確認。
・データフレーム内の文字列置換。
・データフレームの項目分割。
株関連として取得できる情報は下記の通り。
株関連として取得できる情報。
・新規失業保険申請件数をチェック
・失業保険の受給件数をチェック
・失業保険の受給率をチェック
・季節調整あり・なしのデータをチェック
0.事前準備
事前準備はこちら。5分もあればできると思います。
1.ライブラリのインストール
下記のライブラリをインストールします。
pip install tabula-py
2.コード実行
下記のコード実行を実行します。
処理の詳細は、コメント文で記載。
import pandas as pd
import tabula.io
from tabula.io import read_pdf
import requests
# 新規失業保険申請件数のURL
url = "https://www.dol.gov/ui/data.pdf"
# PDF4ページ目のテーブルを取得
dfs = tabula.io.read_pdf(url, stream=True, pages = '4')
# 0番目のテーブルの項目をスペースで分割
df = dfs[0]["Unnamed: 0"].str.split(' ', expand=True)
# 数字として処理するために桁区切りのカンマ「,」を削除
df = df.replace(',', '', regex=True)
# 該当箇所を抜き出して出力
print ('-----------------------------------------------------')
print ('米国 新規失業保険申請件数\n')
print ('#新規失業保険申請件数')
print (" 予想 :")
print (" 調整あり:" f'{int(df.loc[3,3])/10000:.1f}' " 万 ← " f'{int(df.loc[3,4])/10000:.1f}' " (" f'{(int(df.loc[3,3])-int(df.loc[3,4]))/10000:.1f}' ")")
print (" 調整なし:" f'{int(df.loc[4,3])/10000:.1f}' " 万 ← " f'{int(df.loc[4,4])/10000:.1f}' " (" f'{(int(df.loc[4,3])-int(df.loc[4,4]))/10000:.1f}' ")")
print ('\n#受給件数')
print (" 調整あり:" f'{int(df.loc[8,3])/10000:.1f}' " 万 ← " f'{int(df.loc[8,4])/10000:.1f}' " (" f'{(int(df.loc[8,3])-int(df.loc[8,4]))/10000:.1f}' ")")
print (" 調整なし:" f'{int(df.loc[9,3])/10000:.1f}' " 万 ← " f'{int(df.loc[9,4])/10000:.1f}' " (" f'{(int(df.loc[9,3])-int(df.loc[9,4]))/10000:.1f}' ")")
print ('\n#受給率')
print (" 調整あり:" + df.loc[11,4] +" ← "+ df.loc[11,5] )
print (" 調整なし:" + df.loc[12,4] +" ← "+ df.loc[12,5] )
# 更新日を確認
res = requests.head(url)
print("\n---------- 更新日 ------------")
print(res.headers["Last-Modified"]+"\n")
print(url)
# ここまで
3.結果
下記の結果が出力されます。
新規失業保険申請件数、保険の受給件数、受給率について、季節調整「あり・なし」の件数が出力され、データの更新日が出力されます。
データの更新日をみて、データが最新であることを確認してください。
そして、最終行には、URLが表示されるため、ココをクリックして、元データを確認する事もできます。
元データには、下記の様に、増減が多かった州について、要因がコメントされていたりもするので、気になる時は、元データを確認するのも良いと思います。
出典:米国労働省 新規失業保険申請件数
何かの参考になれば幸いです。では!
おつかれさん「缶コーヒー1杯ぐらい、ご馳走してあげよう」という太っ腹な方がいれば、よろしくお願いします!
参考になったら「ハートボタン、フォロー、リツイート」をお願いします。
読まれる可能性があがるので、次の記事を書くやる気が出ます。
ここから先は
24字
¥ 100
この記事が気に入ったらサポートをしてみませんか?