【データ収集】Pythonを活用したサイトからのデータ収集方法 – プログラミングスクール | サポートが手厚いテックアイエス

コラム

COLUMN

【データ収集】Pythonを活用したサイトからのデータ収集方法

HTML/CSS 基礎

今回は、データの収集方法についての一例をご紹介します。

今回取得するデータは東京電力のHP上にcsv形式で置かれているデータをpythonを使い取得するという方法になります。

ネット上のCSVデータをPythonで取得する方法

pythonによるデータ収集の方法は様々な方法がありますので、様々な取得方法を一つづつ身に着けていきましょう!

さて、それでは早速今回取得するデータ元ですが東京電力のこちらのサイトから取得します。

東京電力 電力使用状況データ

上記サイトをご覧いただくと分かりますが、電力データがcsv形式で格納されているのが分かるかと思います。

pythonではcsvファイルをローカル上で読み込むことが可能ですが、インターネット上に存在しているcsv形式のファイルも読み込むことが可能です。

それではコードを作成し、電力のデータを取得していきましょう。

上記コードのskiprows=1で記載されているURL上の余分なデータの取得をスキップするという処理を入れています。

今回ご紹介した例は、あくまでも一例ですのでご自身の用途により取得の方法は変えていくようにしましょう!

さてdfに格納されてたデータを見てみますと、時系列でデータの消費量(実績(万kw))が出力されたかと思います。

こちらは時系列の電力消費量なので、電力を予測するモデルなどを作成しても面白いかもしれません。

2017年データ

こちらのデータはURLに指定がある通り2017年度のみのデータとなっています。

for文を活用して以前のデータも取得する

もちろん2017年度以降を取得する際に、上記コードを繰り返し書きマージしてあげることで2017年以降も取得できます。

しかしこういった処理は取得する情報量が多くなればなるほど大変になりますので、for文で処理するほうが効率的です。

for文を使ったループ処理で取得すると上記のような処理になります。

2019年データ

データを見てみますと2019年までデータが格納されているのが分かるかと思います。

必要に応じてインデックスのリセットを設定

データをみるとインデクッスが2017年度単体で取得した際と変わっていません。

本来であれば3年分なので、もう少し大きな数字になるのが想像できると思います。

この理由としてはconcatで結合された際に、インデックスはリセットされずにそのままつなげられてしまいます。

ですので、concatを使いデータを結合した際には以下のようにインデックスのリセットを必ず行いましょう。

resetを使いインデックスを見てみますと↓のようにインデックス番号が正常に出力されます。

3年間分データ

これで3年間分の電力消費量を取得することができました。

 

今回紹介した取得方法は1例です。

このようにネット上のデータを取得する方法は多様に存在しますので、積極的に見つけると楽しいですよ。

本日無料のプログラミング体験 or相談会の実施が可能です。(60分程度)

女性