• 検索結果がありません。

ふくらみ指数と年少人口構造係数の関係

ドキュメント内 Rで学ぶ人口分析 (ページ 42-48)

第 3 章 人口構造の分析 21

3.5 ふくらみ指数と年少人口構造係数の関係

3.5.1 ふくらみ指数とは

ふくらみ指数とは,既に故人となられた黒田俊夫先生が1976年に書かれた『日本人口 の転換構造』(古今書院)の中で提唱されている人口流入の指標で,15歳から34歳まで の人口が比較的移動しやすいのに対して(都会への就職,地元に帰るUターン,地方にマ イホームを買うIターンなど),比較的移動しないと考えられる5歳から14歳までと,35 歳から44歳までの比をとって,%単位で示した値である。人口構造データだけを使って 移動という人口動態を推定しようとしている点がユニークである。式で書けば,

ふくらみ指数= 15-34歳人口)

({ 5-14歳人口)+35-44歳人口)} ×100

となる。100より大きければ人口が流入していて,100より小さければ人口が流出して いると考える。

しかし21世紀の現在では中卒で就職する人がほとんどいないため,高校卒業まではあ まり移動しないと考えられるし,平均初婚年齢やマイホーム取得年齢も上がっていると考 えられるので,これを5歳上方シフトさせ,

ふくらみ指数改= 20-39歳人口)

({ 10-19歳人口)+40-49歳人口)} ×100

と定義してみよう。英語にすればPopulation Expansion Indexとなるため,PEI()とい う関数名でコード*16を書いた。

*16http://minato.sip21c.org/ldaR/PEI.R

3.5 ふくらみ指数と年少人口構造係数の関係 43 PEI.R

PEI <- function(X, CLS=1, MODE=1) {

# Xはゼロ歳からの年齢階級別人口ベクトル。

# CLSは年齢階級幅。デフォルトは年齢各歳。1510のみ取れる。

# MODE=1でふくらみ指数改,他のMODEでオリジナルのふくらみ指数

N1 <- 20/CLS + 1 - ifelse(MODE==1, 0, 5/CLS) N2 <- N1 + 20/CLS - 1

D1 <- 10/CLS + 1 - ifelse(MODE==1, 0, 5/CLS) D2 <- D1 + 10/CLS - 1

D3 <- D1 + 30/CLS D4 <- D2 + 30/CLS

return(sum(X[N1:N2]) / (sum(X[D1:D2]) + sum(X[D3:D4])) * 100) }

3.5.2 ふくらみ指数と年少人口との関係

この数字との関係をみたら面白いと思われるのは,移動できる可能性のある人口を提供 する能力という意味で,既に述べた年少人口構造係数が良かろう。これも%単位であら わす関数を以下のようにコードする*17

YP.R

YP <- function(X, CLS=1) {

# Xはゼロ歳からの年齢階級別人口ベクトル。

# CLSは年齢階級幅。デフォルトは年齢各歳。15のみ取れる。

NE <- 15/CLS

return(sum(X[1:NE])/sum(X)*100) }

その上で,既に使った201010月の国勢調査人口の速報集計値により,都道府県別に 提供されている男女年齢5歳階級別人口のデータを使って,ふくらみ指数改と年少人口構 造係数を男女別に都道府県ごとに計算させ,横軸に年少人口構造係数,縦軸にふくらみ指 数改をとった散布図を描かせるコード*18は以下のように書ける。

*17http://minato.sip21c.org/ldaR/YP.R

*18http://minato.sip21c.org/ldaR/relations-PEI-YP.R

44 3 relations-PEI-YP.R

x <- read.delim("http://minato.sip21c.org/ldaR/japancensus2010tp.txt", encoding="CP932")

source("http://minato.sip21c.org/ldaR/PEI.R") source("http://minato.sip21c.org/ldaR/YP.R") areanames <- names(table(x$Area))

malePEI <- as.vector(by(x$Males, x$Area, PEI, CLS=5)) maleYP <- as.vector(by(x$Males, x$Area, YP, CLS=5))

femalePEI <- as.vector(by(x$Females, x$Area, PEI, CLS=5)) femaleYP <- as.vector(by(x$Females, x$Area, YP, CLS=5)) textdisp <- c(1,14,21,48)

layout(t(1:2))

plot(maleYP, malePEI, main="男性", frame.plot=FALSE, xlim=c(8,20), ylim=c(80,140), xlab="年少人口構造係数(%)", ylab="ふくらみ指数改(%)")

points(maleYP[textdisp], malePEI[textdisp], pch=16, col="red")

text(maleYP[textdisp], malePEI[textdisp], paste(areanames[textdisp]), pos=1)

plot(femaleYP, femalePEI, main="女性", frame.plot=FALSE, xlim=c(8,20), ylim=c(80,140), xlab="年少人口構造係数(%)", ylab="ふくらみ指数改(%)")

points(femaleYP[textdisp], femalePEI[textdisp], pch=16, col="red")

text(femaleYP[textdisp], femalePEI[textdisp], paste(areanames[textdisp]), pos=1)

実行すると以下の散布図が描かれる。

3.5 ふくらみ指数と年少人口構造係数の関係 45

8 10 12 14 16 18 20

8090100110120130140

男性

ふくらみ指数改(%)

00全国 13東京都

20長野県

47沖縄県

8 10 12 14 16 18 20

8090100110120130140

女性

ふくらみ指数改(%)

00全国 13東京都

20長野県

47沖縄県

他の道府県に比べ,東京都と沖縄県が特異点であることが一目瞭然であろう。また,長 野県が男女とも年少人口構造係数が中程度なのに,ふくらみ指数改がきわめて低い値に なっているのが目立つ。移動統計によると東北各県の方が長野県よりも人口流出は大きい ので,この結果が意味することは,長野県には大学が少ないために20代と30代人口が流 出するが,その後で帰ってきたりIターン就農したりする人口が一定の水準で存在すると いうことと思われる。

3.5.3 ふくらみ指数によるコロプレス図

この「ふくらみ指数改」を何段階かに区分して地図上で塗り分け表示した,いわゆるコ ロプレス図の作成は,地理的な分布を考察する上で有益であろう。

46 3 シェイプファイルを使う王道な方法

かつては,ESRI社やDIVA-GISなどからシェイプファイルとして地図情報をダウンロードし

maptoolsパッケージで描画する必要があった。世界中のどこでも,シェイプファイルさえ

あれば地図にできるし,ない場合も,米国CDCが無償で公開しているEpiInfoに入っている

EpiMap(に限らず多くのGISソフト)を使えば自作できる。

DIVA-GISの場合は,Country:JapanSubject:Administrative Areas (GADM)と指定する と,都道府県が黒,市町村が青線で縁どりされた図が表示され,Downloadというリンクをク リックすると,約17 MBzip圧縮されたファイル(JPN_adm.zip)を入手することができ る。展開すると,JPN_adm0.*JPN_adm1.*JPN_adm2.*と,3つのレベルのシェイプファ イル群が出てくるので,都道府県境界ならJPN_adm1.*,市町村境界ならJPN_adm2.*を使え ば良い。maptoolsパッケージのreadShapePoly()関数でJPN_adm1.shpなどを読み込み,

dataスロットにふくらみ指数改を(先頭の全国データを除いて)マージし,塗り分ければ 良い。

この方法を使っていた当時,DIVA-GISの都道府県データはローマ字のアルファベット順に 並んでいたので,単純なcbind() などではマージできなかった。ふくらみ指数改を計算し た後,ローマ字の都道府県名を変数名PNとしてdata.frame()を定義してからmerge() 関数でマージしていた(order(PN) []の行の添字に使ってソートしておく必要がある)。

DIVA-GISに含まれる都道府県名変数NAME_1の長崎にスペルミスがあって,“Naoasaki” なっていたため,そのままではうまくマージされず,PNの方をNaoasakiにすることで問題 回避できた。

で き あ が っ た コ ー ド は http://minato.sip21c.org/ldaR/fukuramikmap.R あ る 。DIVA-GIS か ら 得 た JPN_adm1.*と ,http://minato.sip21c.org/ldaR/

japancensus2010tp.txt を 作 業 デ ィ レ ク ト リ に 置 い て 実 行 す る と 次 の 地 図 が 得 ら れる。

[90,95]

(95,100]

(100,110]

(110,120]

(120,130]

(130,140]

都道府県別ふくらみ指数(改)によるコロプレス図

(男性,2010年国勢調査)

[80,90]

(90,100]

(100,110]

(110,120]

(120,130]

(130,140]

都道府県別ふくらみ指数(改)によるコロプレス図

(女性,2010年国勢調査)

既に示した通り,日本の都道府県塗り分けならば,mapdataパッケージかNipponパッ ケージを使うのが簡単である。2010年男性の「ふくらみ指数改」を使ったコロプレス図 を描くには,次のようにする。

3.5 ふくらみ指数と年少人口構造係数の関係 47 http://minato.sip21c.org/ldaR/PEImap.R

# データの読み込み

x <- read.delim("http://minato.sip21c.org/ldaR/japancensus2010tp.txt", encoding="CP932")

# ふくらみ指数改を計算する関数

source("http://minato.sip21c.org/ldaR/PEI.R")

# データから都道府県別の男性のふくらみ指数改を計算

malePEI <- as.vector(by(x$Males, x$Area, PEI, CLS=5))[2:48]

# ふくらみ指数改から6段階の塗り分け色

classes <- cut(malePEI, c(9, 9.5, 10:14)*10, include.lowest=TRUE) cols <- cm.colors(7)[-1]

layout(t(1:2))

# using mapdata library(mapdata)

# ふくらみ指数改と参照都道府県名からなるデータフレーム定義

PN <- c("hokkaido","aomori","iwate","miyagi","akita","yamagata","fukushima",

"ibaraki","tochigi","gunma","saitama","chiba","tokyo","kanagawa",

"niigata","toyama","ishikawa","fukui","yamanashi","nagano","gifu",

"shizuoka","aichi","mie","shiga","kyoto","osaka","hyogo","nara",

"wakayama","tottori","shimane","okayama","hiroshima","yamaguchi",

"tokushima","kagawa","ehime","kochi","fukuoka","saga","nagasaki",

"kumamoto","oita","miyazaki","kagoshima","okinawa") map("japan", type="n")

for (i in PN) {

map("japan", region=i, fill=TRUE, add=TRUE, col=cols[classes[PN==i]]) }

legend("bottomright", legend=names(table(classes)), cex=1, fill=cols)

title("都道府県別ふくらみ指数(改)によるコロプレス図

(男性,2010年国勢調査) <mapdata>")

# using Nippon (definition of PN is unnecessary) library(Nippon)

JapanPrefecturesMap(cols[classes], inset=FALSE)

legend("bottomright", legend=names(table(classes)), cex=1, fill=cols)

title("都道府県別ふくらみ指数(改)によるコロプレス図

(男性,2010年国勢調査) <Nippon>")

48 3

[90,95]

(95,100]

(100,110]

(110,120]

(120,130]

(130,140]

都道府県別ふくらみ指数(改)によるコロプレス図

(男性,2010年国勢調査) <mapdata>

[90,95]

(95,100]

(100,110]

(110,120]

(120,130]

(130,140]

都道府県別ふくらみ指数(改)によるコロプレス図

(男性,2010年国勢調査) <Nippon>

ドキュメント内 Rで学ぶ人口分析 (ページ 42-48)