経済産業省:新しいエネルギー基本計画が閣議決定されました
今回はエネルギー基本計画(案)と閣議決定されたエネルギー基本計画で、単語の出現頻度の差を見てみます。
単語出現頻度の数え方の詳細はこちらを参照ください。
使用データ(pdf)
・インポート
from janome.tokenizer import Tokenizer from janome.analyzer import Analyzer from janome.tokenfilter import * import pandas as pd・単語(複合名詞を考慮)の出現回数カウント関数
def words_count(text):
token_filters = [
CompoundNounFilter(),
POSKeepFilter('名詞'),
POSStopFilter(["名詞,代名詞","名詞,非自立","名詞,数"]),
TokenCountFilter()]
a = Analyzer(token_filters=token_filters)
counts=pd.DataFrame()
for count in a.analyze(text):
counts=counts.append([list(count)],ignore_index=True)
counts.columns=["単語","回数"]
counts=counts.sort_values(by="回数", ascending=False).reset_index(drop=True)
return counts
janome Analyzer CompoundNounFilterで複合名詞を考慮して形態素解析、TokenCountFilterで数え上げを行います。名詞(代名詞、非自立名詞、数は除外)のみをフィルタで抽出しています。
・案、正式版それぞれに単語数え上げ、結合、差を計算
draft_words=words_count(draft).columns=["単語","回数_案"] official_words=words_count(official).columns=["単語","回数_正"] words_count=pd.merge(draft_words,official_words, on='単語',how="outer").fillna(0) words_count=words_count.sort_values(by="差", ascending=False).reset_index(drop=True)
draftにエネルギー基本計画(案)、officialに正式版エネルギー基本計画のpdfから抽出したテキストがそれぞれ入っています。これにwords_countの関数を適応して2つの表を作ります。
この2つの表をmergeで"単語"列をキーに結合。このとき how="outer"を指定して、どちらか一方のみに出てくる単語も組み込みます。このどちらか一方のみに出てくる単語は欠測値(NaN)となるので、fillna(0)で0に置換しています。
その後、"回数_案"と"回数_正"の出現回数の差を絶対値で計算し、"差"列を作って、差が大きい順に並べ替えしました。
・出力
| 単語 | 回数_案 | 回数_正 | 差 | |
|---|---|---|---|---|
| 0 | 炭素化 | 108.0 | 118.0 | 10.0 |
| 1 | 我が国 | 147.0 | 156.0 | 9.0 |
| 2 | 世界 | 58.0 | 66.0 | 8.0 |
| 3 | 相手国 | 4.0 | 11.0 | 7.0 |
| 4 | パリ協定 | 13.0 | 19.0 | 6.0 |
| 5 | 観点 | 40.0 | 46.0 | 6.0 |
| 6 | 地域 | 73.0 | 79.0 | 6.0 |
| 7 | 取組 | 178.0 | 183.0 | 5.0 |
| 8 | 平和利用 | 5.0 | 0.0 | 5.0 |
| 9 | 炭素 | 3.0 | 8.0 | 5.0 |
| 10 | ニーズ | 6.0 | 10.0 | 4.0 |
| 11 | 選択肢 | 40.0 | 44.0 | 4.0 |
| 12 | 積極的 | 36.0 | 40.0 | 4.0 |
| 13 | 強化 | 84.0 | 88.0 | 4.0 |
| 14 | 支援 | 17.0 | 21.0 | 4.0 |
| 15 | 提案 | 8.0 | 12.0 | 4.0 |
| 16 | 日本 | 27.0 | 31.0 | 4.0 |
| 17 | 再生可能エネルギー | 122.0 | 126.0 | 4.0 |
| 18 | 平和的利用 | 0.0 | 4.0 | 4.0 |
| 19 | 両立 | 8.0 | 5.0 | 3.0 |
| 20 | 共生 | 9.0 | 12.0 | 3.0 |
| 21 | CO2削減 | 5.0 | 2.0 | 3.0 |
| 22 | 災害時 | 7.0 | 10.0 | 3.0 |
| 23 | エネルギー転換 | 45.0 | 48.0 | 3.0 |
| 24 | CO2削減目標 | 0.0 | 3.0 | 3.0 |
| 25 | 水素等 | 0.0 | 3.0 | 3.0 |
| 26 | 炭素型インフラ輸出 | 0.0 | 3.0 | 3.0 |
| 27 | 効率火力発電 | 4.0 | 1.0 | 3.0 |
| 28 | 排出削減 | 6.0 | 9.0 | 3.0 |
| 29 | 達成 | 10.0 | 13.0 | 3.0 |
| 30 | 水準 | 11.0 | 14.0 | 3.0 |
| 31 | 可能 | 56.0 | 59.0 | 3.0 |
| 32 | 炭素技術 | 1.0 | 4.0 | 3.0 |
| 33 | 必要 | 149.0 | 152.0 | 3.0 |
| 34 | 大幅 | 12.0 | 15.0 | 3.0 |
| 35 | 導入 | 76.0 | 79.0 | 3.0 |
| 36 | 活用 | 115.0 | 118.0 | 3.0 |
| 37 | 関係省庁間 | 3.0 | 1.0 | 2.0 |
| 38 | 効率石炭火力発電 | 1.0 | 3.0 | 2.0 |
| 39 | 野心的 | 11.0 | 9.0 | 2.0 |
| 40 | SDGs | 1.0 | 3.0 | 2.0 |
| 41 | 確認 | 11.0 | 9.0 | 2.0 |
| 42 | 変動 | 20.0 | 22.0 | 2.0 |
| 43 | すべて | 2.0 | 0.0 | 2.0 |
| 44 | 評価 | 19.0 | 21.0 | 2.0 |
| 45 | 牽引 | 3.0 | 5.0 | 2.0 |
| 46 | 形 | 20.0 | 18.0 | 2.0 |
| 47 | 分散型エネルギーシステム | 21.0 | 23.0 | 2.0 |
| 48 | 確実 | 18.0 | 20.0 | 2.0 |
| 49 | 規制基準 | 3.0 | 5.0 | 2.0 |
| 50 | 関係自治体 | 4.0 | 6.0 | 2.0 |
| 51 | リード | 7.0 | 9.0 | 2.0 |
| 52 | 新陳代謝 | 1.0 | 3.0 | 2.0 |
| 53 | 国民 | 23.0 | 25.0 | 2.0 |
| 54 | 整合的 | 4.0 | 6.0 | 2.0 |
| 55 | 普及 | 24.0 | 26.0 | 2.0 |
| 56 | 石炭 | 18.0 | 16.0 | 2.0 |
| 57 | 火力依存 | 2.0 | 0.0 | 2.0 |
| 58 | 揚水等 | 2.0 | 4.0 | 2.0 |
| 59 | 従来 | 13.0 | 15.0 | 2.0 |
| 60 | 水電解システム | 1.0 | 3.0 | 2.0 |
| 61 | 全て | 9.0 | 11.0 | 2.0 |
| 62 | 目標 | 13.0 | 15.0 | 2.0 |
| 63 | 臨界以下 | 1.0 | 3.0 | 2.0 |
| 64 | 整合 | 0.0 | 2.0 | 2.0 |
| 65 | アンモニア | 0.0 | 2.0 | 2.0 |
| 66 | 発展シナリオ | 0.0 | 2.0 | 2.0 |
| 67 | 課題解決 | 4.0 | 6.0 | 2.0 |
| 68 | 調整 | 12.0 | 14.0 | 2.0 |
| 69 | エネルギーシステム | 6.0 | 8.0 | 2.0 |
| 70 | 地球温暖化対策 | 14.0 | 12.0 | 2.0 |
| 71 | コージェネレーション | 14.0 | 16.0 | 2.0 |
| 72 | 追求 | 15.0 | 17.0 | 2.0 |
| 73 | 選択 | 15.0 | 17.0 | 2.0 |
| 74 | 表明 | 1.0 | 3.0 | 2.0 |
| 75 | 臨界圧以下 | 2.0 | 0.0 | 2.0 |
| 76 | 国際展開 | 16.0 | 14.0 | 2.0 |
| 77 | 2度シナリオ | 2.0 | 0.0 | 2.0 |
| 78 | 依存 | 17.0 | 15.0 | 2.0 |
| 79 | 関係府省庁間 | 0.0 | 2.0 | 2.0 |
| 80 | 現状 | 18.0 | 20.0 | 2.0 |
| 81 | 着実 | 34.0 | 36.0 | 2.0 |
| 82 | 整備 | 54.0 | 56.0 | 2.0 |
| 83 | 原則 | 6.0 | 8.0 | 2.0 |
| 84 | 海外 | 35.0 | 33.0 | 2.0 |
| 85 | 向上 | 47.0 | 49.0 | 2.0 |
| 86 | 化石燃料 | 28.0 | 26.0 | 2.0 |
| 87 | 原子力規制委員会 | 6.0 | 8.0 | 2.0 |
| 88 | 効率的 | 36.0 | 34.0 | 2.0 |
| 89 | 省エネルギー技術 | 5.0 | 3.0 | 2.0 |
| 90 | 対応 | 73.0 | 75.0 | 2.0 |
| 91 | 連携 | 37.0 | 39.0 | 2.0 |
| 92 | 安全性 | 31.0 | 29.0 | 2.0 |
| 93 | 課題 | 84.0 | 86.0 | 2.0 |
| 94 | 実施 | 31.0 | 33.0 | 2.0 |
| 95 | 施策 | 6.0 | 8.0 | 2.0 |
| 96 | 国際競争力 | 4.0 | 6.0 | 2.0 |
| 97 | 持続可能 | 6.0 | 8.0 | 2.0 |
| 98 | SS | 6.0 | 8.0 | 2.0 |
| 99 | 実現 | 121.0 | 123.0 | 2.0 |
前回も書きましたが、janome AnalyzerのCompoundNounFilterでは、名詞+名詞=名詞として、複合名詞を作ります。このため、脱、低、第などの接頭詞がつくと名詞と見なされずに途中で途切れてしまいます。また、過剰に名詞化されているものもあります。
上の表で、案と正式版で最も差が大きいのは「炭素化」ですが、これは「低炭素化」「脱炭素化」の「低」「脱」が名詞ではないため抜けているようです。
「炭素型インフラ輸出」は「低炭素型インフラ輸出」で、案では出ていなかった言葉です。「CO2削減目標」も案にはなかった言葉。逆に「火力依存」「2度シナリオ」は案にはあったものの、正式版にはなくなりました。
「平和利用」は「平和的利用」に言い換えられています。
複合語をちゃんと考慮できていないので参考程度ですが、なかなか面白い結果になりました。次回以降、もう少し複合語の抽出方法を検討してみます。
参考:
資源エネルギー庁:エネルギー基本計画(案)
第5次エネルギー基本計画(PDF形式:951KB)
janome ドキュメント
け日記:Python janomeのanalyzerが便利
Janomeで形態素解析をやってみる。
エネルギー基本計画(案)の特徴を見てみる。その1 wordcloud
エネルギー基本計画(案)の特徴を見てみる。その2 名詞でwordcloud
janomeの形態素情報を保存する。
エネルギー基本計画(案)の特徴を見てみる。その3 単語の出現回数を数える
janome Analayzerで複合語(複合名詞)を考慮して形態素解析を行う。
0 件のコメント:
コメントを投稿