0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

過去の電力使用量取得 沖縄電力編

Last updated at Posted at 2020-09-06

はじめに

電力使用量予測のセミナーをしていて、各電力会社の公表されている過去の使用電力量の形式がまちまちなので取得するのが難しいというご意見を聞いていました。
そこで、それぞれの電力会社別にデータの取得方法をまとめてみます。

ちなみに、対象とする電力会社は、北海道電力、東北電力、東京電力、北陸電力、中部電力、関西電力、中国電力、四国電力、九州電力、沖縄電力で、今回は沖縄電力さんを扱ってみます。

注:大量のダウンロードを繰り返すとサーバに負担がかかるので、ダウンロードは一回だけにするか、対象期間を限定して行うよう心がけて下さい。

動作環境

GoogleさんのCoraboratoryという環境で動作させます。

Colaboratory

Webサイト

以下のWebサイトからデータをダウンロードできそうです。

沖縄電力 でんき予報

ダウンロード

for y in range(2016, 2020):
  for m in range(1,13):
    
    # 2016年4月以前のデータはないので省略
    if y == 2016 and m < 4:
      continue
      
    for d in range(1, 32):
      url = "https://www.okiden.co.jp/denki2/juyo_10_{:04}{:02}{:02}.csv".format(y, m, d)
      !wget $url

読込と可視化

from glob import glob
import pandas as pd

# ダウンロードしたファイルの一覧を取得
files = glob("*.csv")
files.sort()

df_juyo = pd.DataFrame()

for f in files:
  print("\r", f, end="")
  try:
    df = pd.read_csv(f, encoding="Shift_JIS", skiprows=7, nrows=24)
  except:
    df = pd.read_csv(f, encoding="Shift_JIS", skiprows=13, nrows=24)
  df_juyo = pd.concat([df_juyo, df])

# 日時をインデックスに設定
df_juyo.index = pd.to_datetime(df_juyo["DATE"] + " " + df_juyo["TIME"])
df_juyo = df_juyo.sort_index()

# グラフ描画
df_juyo["当日実績(万kW)"].plot(figsize=(15,5))

ダウンロード.png

できた!

補足

可視化してみると、2018年後半になにか普段と違う傾向が見られます。
データのエラーかなとも思ったので、少し確認してみると以下のようなグラフになっていました。
ダウンロード (1).png

2018年9月の災害を調べると、以下のような記事が見つかりました。
平成30年台風24号(2018年)

甚大な被害があったようです。

電気使用量を見ると、色々な気付きがありますね。
以上、現場からきむらがお伝えしました。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?