ニコニコ動画と日本の都市人口の意外な関係

ニコニコ動画再生数と、日本の都市人口は、どちらも対数正規分布に従う。

一般に、都市の人口と、その順位はジップの法則に従うと言われています。

第n位(nは自然数)の都市の人口は第1位の都市の1/nとなるという法則である
   -- Wikipedia - 順位・規模法則 >> wikipedia:順位・規模法則

ウィキペディアにある日本の都市人口データを使って、この法則を確かめてみましょう。
* Wikipedia - 日本の市の人口順位 >> wikipedia:日本の市の人口順位
データをエクセルにコピペしてグラフにすると、こうなりました。

一部の大都市(東京、横浜、大阪、名古屋・・・)が突出していることがわかります。
このデータを両対数プロットしたとき、直線になる、というのがジップの法則です。

実際にプロットしてみると・・・あれっ、このパターンはどこかで見たことがあるぞ!
つい先日調べた、ニコニコ動画再生数の分布にそっくりではありませんか。
* ニコニコ動画再生数は対数正規分布に従う >> [id:rikunora:20140320]
両対数プロットの線は、大まかに見れば直線ですが、よく見ると
 ・上位の大都市は直線よりも下側にカーブしている、
 ・下位の都市では、急激な落ち込みが見られる、
これらの特徴は、ニコニコ動画データ再生数のパターンと同じです。
つまり、日本の都市人口は、ジップ則よりむしろ対数正規分布に近い、ということです。

以下、R言語でジップ則(べき分布)と対数正規分布の当てはまりを検証してみました。

■ ジップ則(べき分布)

黒が実データ、赤がジップ則のあてはめ結果です。
このグラフは、横軸が人口、縦軸が順位(1位が一番下)となっています。
(最初のグラフと縦横が逆になっている)
これを両対数プロットに直したのが、下のグラフです。


# データを読み込む
> city <- read.csv("日本の都市の人口と順位.csv")
> city
order pref city pop
1 0 東京都 特別区部 9071577
2 1 神奈川県 横浜市 3702225
3 2 大阪府 大阪市 2682140
4 3 愛知県 名古屋市 2272075

# 非線形回帰を実行
> result_pow <- nls( order ~ A / pop^B , start=c(A=1000000, B=1), data=city )

> summary( result_pow )

Formula: order ~ A/pop^B

Parameters:
Estimate Std. Error t value Pr(>|t|)
A 2.401e+05 2.281e+04 10.53 <2e-16 ***
B 5.765e-01 8.961e-03 64.33 <2e-16 ***

    • -

Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 82.17 on 789 degrees of freedom

Number of iterations to convergence: 12
Achieved convergence tolerance: 8.156e-07

> AIC( result_pow )
[1] 9223.369


■ 対数正規分布

黒が実データ、赤が対数正規分布のあてはめ結果です。
これを両対数プロットに直したのが、下のグラフです。


# 非線形回帰を実行
> result_lgnorm <- nls( order ~ A * (1 - plnorm( pop, meanlog=M, sdlog=D )), start=c(A=1000000, M=10, D=1), data=city )

> summary( result_lgnorm )

Formula: order ~ A * (1 - plnorm(pop, meanlog = M, sdlog = D))

Parameters:
Estimate Std. Error t value Pr(>|t|)
A 8.933e+02 5.203e+00 171.7 <2e-16 ***
M 1.102e+01 8.300e-03 1327.7 <2e-16 ***
D 9.599e-01 7.599e-03 126.3 <2e-16 ***

    • -

Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

Residual standard error: 16.26 on 788 degrees of freedom

Number of iterations to convergence: 8
Achieved convergence tolerance: 4.926e-06

> AIC( result_lgnorm )
[1] 6661.515


両者を比べれば、対数正規分布がよく当てはまっていることが見て取れます。

ニコニコ動画と、日本の都市人口、2つの分布を重ねると、こんな風になります。

このグラフは、横軸が順位(左端が下位←→右端が1位)、縦軸が頻度のヒストグラムです。
横軸のスケールは、ニコニコ動画では830万件、都市では800都市、となっています。
縦軸のスケールは、2つのグラフの頂点の高さが同じになるように調整しました。
こうして見ると、分布の形状は似ているものの、日本の地方格差よりも
ニコニコ再生数格差の方がずっと大きいことがわかります。
あるいは、日本の都市だけでなく、小さな町や村まで含む830万地域を挙げれば、
2つのグラフは一致するのかもしれません。

私はなんとなく聞きかじりに「都市の順位はジップの法則に従う」と覚えていたのですが、
日本の都市に限って言えば、ジップの法則からのずれも見受けられるようです。
「都市の人口と順位 対数正規分布」で検索すると、幾つかの論文がヒットします。
* 人口移動現象の数値的及び理論的研究 >> http://miuse.mie-u.ac.jp/handle/10076/13759

・・・平成の市町村合併の影響で、2005年には対数正規分布に移行することがわかった。

なんと、合併の影響だったのかぁ〜。
ニコニコ動画の場合は、どうだろうか。
少なくとも投稿者(とその知人友人)が何度か再生するので、底上げされるのかな?
などと私は想像しているのですが、真実はいかに。