この教材は原論文と同じデータを読み込み、同じ手順で計算し直しています。画面に出る数値と図は、あなたのブラウザがその場で計算した結果です。
| 原論文が使ったデータ | SSDSE・国勢調査・地方公共団体実行計画(区域施策編)策定・実施マニュアル(算定手法編)・農業センサス 分析単位:市区町村 中核手法:相関分析 |
|---|---|
| この教材が使うデータ |
|
| 原論文(PDF) | 脱炭素社会に向けてサステナブルなまちづくりをしていくためには? 審査員奨励賞/中谷 祐貴、佐竹 正裕、北原 櫂人(聖学院高等学校) |
▶ ここに書いてある分析は、ページ下部の「🐍 ブラウザで動かす」でそのまま実行できます(インストール不要)。動かしているのは code/2022_H5_12_shorei.py(311 行)そのものです。
このページの総人口ランキング(図4)は、以下の手順で自分で再現できます。コードの編集は不要です。(二酸化炭素排出量は環境省マニュアル由来・市区町村粒度でSSDSE-Bに無いため、図1〜図3は原論文の報告値を可視化します。)
data/raw/ フォルダに入れます。html/figures/ に自動保存されます。
気候変動・環境問題は、日本のみならず世界で近年最も注目されている課題の一つである。著者らはその原因の一つである二酸化炭素排出量をどう減らせばよいかに着目し、「この世界で起きている環境問題という大きな壁を乗り越えるための突破口を作る」ことを目的に掲げた。そこで本研究は「二酸化炭素排出量を減らす要因はなにか」をテーマとして分析を行った。
分析の進め方はシンプルで力強い。まず地域別(市区町村)の排出量を多い順に並べてランキングにし、次に排出量と様々な地域特性の相関を調べ、さらに県や市の政策・取り組みを排出量の変化に重ねて分析した。高校生らしく「地域を並べて比べ、そこで何が起きているか政策まで調べる」という探究の姿勢が全体を貫いている。
高校生の部 環境省マニュアル・国勢調査・RESAS ランキング分析 相関分析 時系列変化量(差分)
目的変数は地域別(市区町村)2019年の二酸化炭素排出量[t]で、環境省「地方公共団体実行計画(区域施策編)策定・実施マニュアル(算定手法編)」(2019年・2008年)を用いた。説明側の変数は総人口(国勢調査)、農家数(農業センサス)、製造品出荷額・森林率・都市公園面積・自家用乗用車保有台数(RESAS等)を組み合わせている。年度・粒度の異なるデータを組み合わせている点は注意が必要である。
| 役割 | 変数 | 出典 |
|---|---|---|
| 目的 | 地域別 2019年/2008年の二酸化炭素排出量[t] | 環境省「地方公共団体実行計画(区域施策編)策定・実施マニュアル(算定手法編)」(2019・2008) |
| 人口 | 地域別総人口/2010年時点の総人口 | 国勢調査(2020・2010)*SSDSE |
| 農業 | 農家数(販売農家+自給的農家) | 農業センサス(2015)*SSDSE |
| 工業ほか | 製造品出荷額・森林率・都市公園面積・自家用乗用車保有台数 | RESAS(地域経済分析システム)ほか |
*は原論文がSSDSE(教育用標準データセット)から取得した変数。人口1人あたり排出量=2019年排出量÷総人口、農家数=販売農家+自給的農家、として著者が加工した指標も用いている。
2019年の排出量を並べ、上位地域(表3)と、人口の影響を除くための人口1人あたり排出量(表4)を作成した。人口1人あたりで最も少ない3地域が宮城県に集中していたことから、宮城県の取り組みを調査するきっかけになった。
排出量と地域特性(製造品出荷額・総人口・農家数・森林率・都市公園面積・自家用乗用車保有台数)の相関係数を求め、5つの仮説を検証した。「工業が盛んだと多い」「人口が多いと多い」などの仮説を、符号と強さで確かめている。
2019年と2008年の排出量の差を地域ごとに算出し(表5)、10年で大きく減らせた地域を特定した。宮城県・岡山県倉敷市の「ゼロカーボン」施策と重ねることで、大きな取り組みが排出量抑制につながるという主張の根拠にした。
2019年の二酸化炭素排出量の上位10地域が原論文 表3 にまとめられている。この図はその報告値をそのまま可視化したものである(市区町村別の排出量は環境省マニュアル由来でSSDSE-Bに無いため再計算できない)。上位3地域を赤で示す。
=== [1] 2019年 二酸化炭素排出量ランキング(原論文 表3 の報告値)=== 目的変数「市区町村別CO2排出量」は環境省マニュアル由来・SSDSE に無く再計算不可(報告値の転記) 順位 都道府県 市区町村 CO2排出量(t) 1 神奈川県 横浜市 19,308 2 岡山県 倉敷市 16,944 3 大分県 大分市 15,624 4 広島県 広島市 15,234 5 大阪府 大阪市 14,016 6 千葉県 市原市 13,876 7 愛知県 名古屋市 13,102 8 北海道 札幌市 13,062 9 愛知県 豊田市 11,860 10 兵庫県 神戸市 11,291 → 上位3地域: 神奈川県横浜市(19,308t)、岡山県倉敷市(16,944t)、大分県大分市(15,624t) ※ いずれも工業が盛んな大都市。著者はこの並びから「工業・人口が要因」と仮説を立てた。
排出量と地域特性(工業・人口・農業・森林・自動車)の相関係数が原論文 4-2章に報告されている。この図はその報告値をそのまま可視化したものである(排出量がSSDSE-Bに無いため再計算不可)。正の相関を緑、負の相関を赤で示す。
=== [2] CO2排出量(2019)と地域特性の相関係数(原論文 4-2章の報告値)=== 全て原論文の報告値の転記。CO2排出量は SSDSE に無いため再計算不可。 相手の指標 相関係数r 著者の解釈 総人口 +0.8478 正(人口が多いほど多い) 製造品出荷額(2019) +0.6132 正(工業が盛んなほど多い) 都市公園面積(ha)(2009) +0.5724 正 農家数(合計・2015) +0.3080 正(弱い) 森林率(2017) -0.5896 負(森林が多いほど少ない) 自家用乗用車の100世帯当たり保有台数 -0.6066 負 → 絶対値が最大の相関: 総人口(r=+0.848)=人口が最も強く排出量を規定(報告値) ※ 農業(農家数)は正・弱く、著者の「農業が盛んだと少ない」という仮説とは逆向きだった。
2019年と2008年の排出量の差=変化量(差分)を地域ごとに算出したのが原論文 表5・表6 である。この図はその報告値をそのまま可視化したものである。負の値は10年間で排出量が減少したことを示す。
=== [3] 2008→2019 の CO2排出量 変化量(原論文 表5・表6 の報告値)=== ■ 表5:排出量の減少が大きかった上位10地域(負=10年間で減少) 都道府県 市区町村 2019(t) 2008(t) 変化量(t) 岡山県 倉敷市 16,944 22,006 -5,062 千葉県 市原市 13,876 18,687 -4,811 大阪府 大阪市 14,016 17,666 -3,650 山口県 周南市 4,535 7,385 -2,850 愛知県 名古屋市 13,102 15,608 -2,506 福岡県 北九州市 8,169 10,241 -2,072 広島県 福山市 7,547 9,266 -1,719 広島県 東広島市 3,540 5,254 -1,714 兵庫県 姫路市 6,029 7,442 -1,413 静岡県 浜松市 4,531 5,874 -1,343 ■ 表6:上位3排出地域の比較(大分市のみ増加) 神奈川県横浜市: 2019=19,308t / 2008=19,859t / 変化=-216t(減少) 岡山県倉敷市: 2019=16,944t / 2008=22,006t / 変化=-1,322t(減少) 大分県大分市: 2019=15,624t / 2008=15,066t / 変化=+2,336t(増加) → 倉敷市・市原市など工業市は10年で大きく減少。大分市のみ +2,336t と増加(報告値)。 ※ 注意: 倉敷市の変化量は表5では -5,062t、表6では -1,322t と原論文内で食い違う。 横浜市の2008年値も表6は19,859t。ここでは原論文の各表の記載をそのまま転記している。
以下の相関・数値はすべて原論文の報告値である。ランキング・相関分析・変化量・政策調査から、著者は次のように整理した。
| 地域特性 | 排出量との相関 | 解釈(著者) |
|---|---|---|
| 総人口(r=+0.848)/製造品出荷額(r=+0.613) | 強い正の相関 | 人口が多く工業が盛んな地域ほど排出量が多い |
| 森林率(r=−0.590)/自家用乗用車保有台数(r=−0.607) | 負の相関 | 森林が多い(都市化が進んでいない)地域ほど排出量が少ない |
| 農家数(r=+0.308) | 弱い正の相関 | 仮説(農業が盛んだと少ない)とは逆向きで、関係は弱い |
人口1人あたり排出量が少ない3地域は宮城県(蔵王町・柴田町・亘理町)に集中し、宮城県は「ゼロカーボンチャレンジ2050」を10年前から実施していた。岡山県倉敷市も「2050年ゼロカーボンシティ」を掲げ、2008→2019で排出量を大きく減らした。一方、大分市は同期間で+2,336t と増加し、脱炭素の大きな施策が少なかった。
原論文の目的変数(CO2排出量)はSSDSE-Bに無く、相関の相手方の多く(製造品出荷額・森林率・都市公園面積・自動車保有台数)も無い。唯一SSDSE-Bに収録があるのは「総人口」。原論文が最も強い相関を報告したこの変数を、SSDSE-Bから構築してみる。
skiprows=[1] で読み込み、先頭列 SSDSE-B-2026(年度)が2023の47都道府県を残す。原論文が最も強い相関(r=+0.848)を報告した相手方総人口(A1101)を取り出し、上位・下位の都道府県を確認する。176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 | # CLAUDE.md データ仕様どおり: cp932 / 先頭列名 SSDSE-B-2026 が年度 / # ラベル行 skiprows=[1] / 2023年抽出 df['SSDSE-B-2026']==2023。 df = pd.read_csv(DATA_B, encoding='cp932', header=0, skiprows=[1]) df['SSDSE-B-2026'] = pd.to_numeric(df['SSDSE-B-2026'], errors='coerce') d = df[df['SSDSE-B-2026'] == 2023].copy().reset_index(drop=True) d['A1101'] = pd.to_numeric(d['A1101'], errors='coerce') # A1101 総人口 d['総人口'] = d['A1101'] print('\n=== [4] SSDSE-B から総人口を構築(実再現・2023年・都道府県)===') print(f'対象: {len(d)}都道府県 / 原論文が最も強い相関(r=+0.848)を報告した相手方「総人口」を SSDSE-B で構築') dr = d.sort_values('総人口', ascending=False) print('総人口が多い上位5都府県:') for _, r in dr.head(5).iterrows(): print(f" {r['Prefecture']:<5} {int(r['総人口']):>12,} 人") print('総人口が少ない下位5県:') for _, r in dr.tail(5).iterrows(): print(f" {r['Prefecture']:<5} {int(r['総人口']):>12,} 人") print('→ 総人口は東京・神奈川・大阪・愛知など大都市圏が上位。CO2排出量の上位地域') print(' (横浜・大阪・名古屋・神戸…)が属する都府県と重なり、原論文の「人口が多い地域は') print(' 排出量も多い(r=+0.848)」という報告と方向性が整合する(相関そのものは再計算不可)。') |
=== [4] SSDSE-B から総人口を構築(実再現・2023年・都道府県)=== 対象: 47都道府県 / 原論文が最も強い相関(r=+0.848)を報告した相手方「総人口」を SSDSE-B で構築 総人口が多い上位5都府県: 東京都 14,086,000 人 神奈川県 9,229,000 人 大阪府 8,763,000 人 愛知県 7,477,000 人 埼玉県 7,331,000 人 総人口が少ない下位5県: 福井県 744,000 人 徳島県 695,000 人 高知県 666,000 人 島根県 650,000 人 鳥取県 537,000 人 → 総人口は東京・神奈川・大阪・愛知など大都市圏が上位。CO2排出量の上位地域 (横浜・大阪・名古屋・神戸…)が属する都府県と重なり、原論文の「人口が多い地域は 排出量も多い(r=+0.848)」という報告と方向性が整合する(相関そのものは再計算不可)。
原論文が最も強い相関(r=+0.848)を報告した相手方は総人口だった。その総人口を、SSDSE-Bから都道府県別にランキングにする。これは実データからの再計算(実再現)で、原論文が市区町村粒度なのに対し都道府県粒度・2023年である点に注意(地図の代わりにランキングで地域差を表現)。
著者はランキング・相関・変化量・政策調査を総合し、「ゼロカーボンシティ」のような市全体での大きな取り組みが排出量を抑える要因と結論づけた。そのうえで、地域の産業構成に応じた施策を【工業】【農業】【人口】の観点で分類した(すべて報告値に基づく著者の考察)。
工業が盛んな地域:再生可能エネルギーの導入、自社施設のZEB化・設備更新。人口が多い地域:公共交通機関の積極的な利用。農業が盛んな地域:有機農業の促進、持続可能なフードサプライチェーンの推進。
2019年時点の排出量上位3地域のうち、横浜市・倉敷市は既にゼロカーボンシティを掲げているのに対し、大分市のみ2008年比で増加(+2,336t)。著者は大分市の主流産業(鉄鋼・化学・石油)に着目し、鉄鋼生産プロセスのCO2削減、CCUS(二酸化炭素回収・貯留)、水素還元製鉄など産業特化型の施策を提言した(鉄鋼業は1tの鉄を作る際に2tのCO2が発生するとされる)。
本研究は、地域別(市区町村)の2019年二酸化炭素排出量を軸に、ランキング分析・相関分析・2008→2019の変化量(差分)・自治体政策の調査を組み合わせ、総人口(r=+0.848)・製造品出荷額(r=+0.613)と強い正の相関を確認し、「ゼロカーボンシティ」のような市全体の大きな取り組みが排出量抑制の要因と結論づけた(いずれも報告値)。数字の背後にある自治体の取り組みまで調べ、産業構成に応じた施策(再エネ・CCUS・水素還元製鉄)を提言した探究の姿勢が見どころである。
このページの総人口ランキング(図4)は、以下から再現できます。
🐍 再現コード(.py) 📊 SSDSE-B-2026.csv
※ 図1(排出量ランキング)・図2(相関係数)・図3(変化量)は、目的変数の二酸化炭素排出量(環境省マニュアル・市区町村粒度)がSSDSE-B外のため、原論文の報告値を可視化したものです。図4はSSDSE-Bの総人口からの実再現ですが、原論文が市区町村粒度なのに対し本再現は都道府県粒度・2023年で、排出量がSSDSE-Bに無いため「相関の相手方(総人口)の作り方と地域差」の再現です。
この研究を読むとき・まねするときに陥りやすい誤解を整理する。
クリックすると各用語の詳しい解説ページに移動できます。
この研究で使われている手法を、手を動かす順に説明する。
この研究の「人口・工業と正の相関、大きな取り組みが減少の要因(だが因果は不明)」という結論は、次の研究の出発点になる。
再現コードを少し変えるだけで試せる課題を、易しい順に用意した。
d = df[df['SSDSE-B-2026'] == 2023] を 2015 や 2020 に変えて、総人口の都道府県ランキングが年で変わるか確かめよう。ds を d.sort_values('総人口').tail(10) に絞り、上位10都府県だけのランキングにしてみよう。排出量ランキング(図1)の都市が属する県と見比べると面白い。d[['A1101','H5609']].corr() で計算しよう。人口と環境負荷の関係を、SSDSE-B内だけで実データ確認できる。「地域単位のデータで環境・社会現象の要因をランキングと相関で探る」発想は、環境政策や行政で広く使われている。
この研究を読んで浮かびやすい疑問に答える。
この論文を理解できたか、クリックで確認しましょう。間違えても解説が出ます。
このページの分析は、この画面の中でそのまま実行できます。
Python をインストールする必要も、CSV をダウンロードする必要もありません。
下のセルの 「▶ ブラウザで実行」 を上から順に押すか、
「▶ 最初から全部実行」 で一気に流してください。
表示されるのは、本文の図表とまったく同じ計算の結果です
(動かしているのは再現スクリプト code/2022_H5_12_shorei.py そのもの)。
コードは書き換えられます。「✏️ 書き換える」で数字や変数を変えて ▶ を押すと、 結果がどう変わるかをその場で確かめられます(元に戻すボタンつき)。 ページを開いた時点で裏で実行環境の準備が始まっているので、待ち時間はほとんどありません。 初回だけ実行環境の取得にインターネット接続が必要です。