都道府県市区町村
落書き帳

トップ > 落書き帳 >

メンバー紹介

>
YTさんの記事が2件見つかりました

… スポンサーリンク …


記事番号記事日付記事タイトル・発言者
[87449]2015年4月3日
YT
[87439]2015年3月31日
YT

[87449] 2015年 4月 3日(金)18:47:54【1】YT さん
正規分布とのズレについて
[87448] オーナー グリグリさん
都道府県別の面積の丸め誤差をまとめて頂きありがとうございます。

以上の結果によると、全国の合計値の誤差(n=1921)が、0.25km2 となっていますが、[87439]における誤差(n=2000)の平均値 0.10km2 から大きく外れています。どこかに落とし穴があるのでしょうかねぇ。


|m| = a√{n/(6π)} = 0.1009... ≒ 0.10 km2 (n = 1921, a = 0.01)

は、蓄積された丸め誤差の平均(期待値)の絶対値です。蓄積された丸め誤差の標準偏差自体は

σ = a√(n/12) = 0.1265... ≒ 0.13 km2 (n = 1921, a = 0.01)

です。連続一様分布(アーウィン・ホール分布)に関しては、英語版のwikipediaに分かりやすい図と式がありました。を見ればわかるように、n ~ 8ぐらいで十分正規分布近似が可能となります。また説明にはvariance (分散, σ^2) = n/12 とありますが、この場合0から1までの連続一様分布を足した場合の分散であり、0~1とは限らない範囲0 ~ a(n回足せば、0 ~ naの範囲となる)であれば、分散σ^2 = a^2*n/12となり、標準偏差σは分散σ^2の平方根となるσ = a√(n/12)と表現されることになります。

全国の市区町村等別面積の合計と全国の面積との差である+0.25 km2は、一応±2σの範囲に収まり(正確には+0.245~+0.255の範囲を考慮すると、1.936σ~2.015σとなりますが)、受験でおなじみの偏差値であらわすのなら、偏差値69.8に相当する(正確には偏差値69.36~70.15の範囲)ので、多少丸め誤差の蓄積が予想よりも多めですが、一応許容範囲ではあると思われます。

[87439]のモデル表で言えば、丸め誤差が全く生じない確率(±0.005以下)は3%に過ぎない。
しかしながら生じる丸め誤差で一番確率が高いのは、±0.01 km2で、約6%の確率。
±0.10 km2の誤差が生じる確率は約5%程度だが、±0.10 km2以内に誤差が収まる確率は58%。±0.10 km2よりも誤差が大きくなる可能性は42%。
±0.25 km2の誤差が生じる確率はわずか1%だが、±0.25km2よりも誤差が大きく出る確率も、まだ5%あるという感じです。

都道府県別の[87448]のデータを使って、それぞれの実際の丸め誤差を、標本数から予測される標準偏差で割り、ズレを計算してみると:

ズレ都道府数割合(%)正規分布から期待される割合(%)
±3σ以上00.00.3
±2~3σ714.94.3
±1~2σ1123.427.2
±1σ以内2961.768.3

2σから3σまでずれる県が7県と、若干多いようです。ただし±3σ以上ずれている県はありません。具体的には以下の7県です。

都道府県誤差m, km2標本数n予測される標準偏差σ, km2ズレ
群馬県+0.05350.0171+2.93σ
富山県+0.03150.0112+2.68σ
佐賀県+0.03200.0129+2.32σ
新潟県-0.04370.0176-2.28σ
沖縄県+0.04420.0187+2.14σ
鹿児島県-0.04450.0194-2.07σ
埼玉県+0.05720.0245+2.04σ

こうやって並べてみると、確かに群馬県の誤差は大きいと言えます。また二番目の富山県などは、市町村数がたった15なのに、+0.03 km2も誤差が出ています。これらはありえないほど大きい誤差が出ていると言うほどではないが、やはり何かしら恣意的な原因もあるという可能性も否定できませんし、これだけのデータだけでは何とも言えません。あるいは四捨五入の際に、切り捨てというプロセスが混入してしまっている可能性もあるかもしれません。

群馬県・埼玉県については、[87423]でhmt さんが、m2単位のデータがあったことを指摘されていますが、もしかしたら具体的にどの辺が四捨五入の処理で問題になっているのか、あるいは単なる偶然なのか指摘できるかもしれません。

【±3σ以上の正規分布における割合を0.3%に修正、その他文章の一部を修正】
[87439] 2015年 3月 31日(火)23:39:06【4】YT さん
四捨五入に伴う面積の合計の丸め誤差についての統計学的考察
最近面積の改訂の話題が出ているので、久々に投稿します。

本来であれば面積は連続値であり、四捨五入に伴う丸め誤差が蓄積される結果、個々の自治体の面積の合計と国土の面積はズレて当たり前です。しかしながら2013年以前の国勢調査記載の面積の数字や陸軍参謀本部の調査による面積の数字においては、そのような丸め誤差が全くなく、市区町村別の面積の合計と、市郡別、都道府県別、国土の面積が完全に一致します (合衆国統治の琉球・沖縄の面積や1945年・1947年の面積などは、公式の数字で色々ズレがあるのですが、まあこれは除外して考えます)。平成26年の面積の改訂により、むしろ正しい面積の表記になったわけですが、チェックがし辛いという別の問題も出たわけですね。

面積の合計に伴う丸め誤差について、以前自分も[85659]で大雑把に見積もりましたが、

小数点以下第3位で四捨五入しているとすると、本当の面積のデータは±0.005 km2の範囲に存在し、四捨五入後の値との誤差の絶対値の平均は0.0025 km2となります。

ここの部分でズボラな結論で誤差を見積もったのですが、数学的な誤りがありました。そこで改めて四捨五入に伴う面積の合計の丸め誤差について見積もり直してみました。一応高校卒業レベルの微積・確率統計の知識で理解できる内容だと思います。

今、平均値m = 0で、±a/2の間に収まる連続一様分布を仮定します。∫f1(x)dx = 1になるように確率密度関数f1(x)を規格化すると、

|x| ≦ a/2: f1(x) = 1/a
|x| > a/2: f1(x) = 0 ...(1)

と表現できます。確率密度関数f1(x)の分散(σ1)^2は、[85659]で示したように(a/4)^2では誤りであり、ちゃんと積分により計算すると、

(σ1)^2 = ∫(x - m)^2*f1(x)dx (但し -∞ < x < +∞)
= 1/a ∫x^2dx (式(1)を代入, 但し -a/2 ≦ x ≦ a/2)
= a^2/12 ...(2)

さて、f1(x)同士を2つ足し合わせた時の確率密度関数f2(x)は、

|x| ≦ a: f2(x) = (a - |x|)/a^2
|x| > a: f2(x) = 0 ...(3)

分散(σ2)^2は
(σ2)^2 = ∫(x - m)^2*f2(x)dx (但し -∞ <x < +∞)
= 2/a^2 ∫ -x^3 + ax^2 dx (式(3)を代入, 但し 0 ≦ x ≦ a)
= a^2/6 (= 2*(σ1)^2) ...(4)

さらに3個、4個、…n個と、この確率密度関数を足し合わせていくと、確率密度関数fn(x)は、パスカルの三角形の組み合わせで継ぎ合わさったような、カクカクの複雑な多次多項式となります(アーウィン=ホール Irwin-Hall 分布)。ただしnが十分大きければ、確率密度関数は正規分布に近似できます。ここで分散(σn)^2は、個々の分散(σ1)^2の和なので、

(σn)^2 = n*a^2/12 ...(5)

となるはずです。実際n = 2の時も成立することを、式(4)で確認しました。

2013年以前の市町村別面積も小数第三位で四捨五入されており、±0.005 km2の誤差を含むはずです。よってn = 約2000の市区町村等の面積の合計であれば、a = 0.01 km2なので、(5)式に代入することにより、真の面積との間の丸め誤差の標準偏差は

σn = √(2000 × 0.01^2/12) ≒ 0.12909944 (km2)

になり、また丸め誤差の誤差分布も、σ ≒ 0.129 km2の正規分布に近似できることになるはずです。2000の自治体を合計した結果、小数点以下第2位まで一致する確率、すなわち± 0.005 km2の間に面積が入る確率は、標準正規分布のZ ≒ ±0.038729833 (≒ 0.005/0.12909944)の間に入る確率です。この範囲に入る割合は、エクセルのNORM関数を使って計算すると約3.0894%と求められます。つまり、2010年頃の約2000の市町村別等の面積の合計が、日本全国の面積の合計に一致する確率はわずか3%程度で、本当に面積が純粋な四捨五入だけで求めているのであれば「ありえない」確率ということになります。

また実数からどの程度ずれが生じてしまうかですが、平均が0、標準偏差がσとなるような正規分布の確率密度関数f(x)は、次のように表現できます。

f(x) = 1/√(2πσ^2) * exp {-x^2/(2σ^2)}...(6)

よってズレの平均値mは 0 ≦ x < +∞ の範囲のみを考えると、

m+ = ∫xf(x)dx (但し 0 ≦ x < +∞)
= 1/√(2πσ^2) ∫ x exp {-x^2/(2σ^2)} dx (式(6)を代入) ...(7)

ここでt = x^2/(2σ^2), x dx = σ^2 dt ...(8)と置いて(7)式に代入すると

m+ = σ/√(2π) ∫exp(-t) dt
= σ/√(2π)[exp{-x^2/(2σ^2)}] (但し 0 ≦ x < +∞)
= σ/√(2π) ... (9)

同じように負側の平均を積分で求めると、m- = -σ/√(2π) となり、合計m = m+ + m- = 0で平均はゼロになってしまいます。元々平均がゼロになる確率密度関数を選んでますので当たり前のことです。しかしながら、我々にとって正にズレようが負にズレようが、ズレていることには変わりなく、重要なのはズレxの絶対値の平均|m| = |m+| + |m-|です。よって

|m| = |m+| + |m-| = σ√(2/π) ...(10)

ここでσ = σn とすると、式(5)より

|m| = a √{n/(6π)} ...(11)

n = 2000, a = 0.01とすると、

|m| ≒ 0.10300645

というわけで、2000の自治体の面積の合計した際に生じる丸め誤差の平均を見積もっても、せいぜい±0.10 km2程度という結論がでます。

エクセルのNORM関数を使って、もう少し詳しくモデル計算(n = 2000)をしますと以下の通りです。

面積のズレ(km2)実数との差(km2)割合(%)割合の累積(%)標準偏差の累積σ(面積のズレの絶対値)×(割合)の累積(km2)
±0.00±0.000~0.0053.0893.0890.03870.00000
±0.01±0.005~0.0156.1609.2500.11620.00062
±0.02±0.015~0.0256.10515.3550.19360.00184
±0.03±0.025~0.0356.01421.3690.27110.00364
±0.04±0.035~0.0455.88927.2590.34860.00600
±0.05±0.045~0.0555.73332.9910.42600.00886
±0.06±0.055~0.0655.54738.5380.50350.01219
±0.07±0.065~0.0755.33543.8720.58090.01593
±0.08±0.075~0.0855.10048.9720.65840.02001
±0.09±0.085~0.0954.84653.8190.73590.02437
±0.10±0.095~0.1054.57858.3970.81330.02895
±0.11±0.105~0.1154.29962.6960.89080.03367
±0.12±0.115~0.1254.01266.7080.96820.03849
±0.13±0.125~0.1353.72270.4301.04570.04333
±0.14±0.135~0.1453.43373.8631.12320.04813
±0.15±0.145~0.1553.14777.0101.20060.05285
±0.16±0.155~0.1652.86879.8781.27810.05744
±0.17±0.165~0.1752.59882.4761.35550.06186
±0.18±0.175~0.1852.33984.8141.43300.06607
±0.19±0.185~0.1952.09386.9071.51050.07005
±0.20±0.195~0.2051.86288.7701.58790.07377
±0.21±0.205~0.2151.64790.4161.66540.07723
±0.22±0.215~0.2251.44891.8641.74280.08041
±0.23±0.225~0.2351.26593.1291.82030.08332
±0.24±0.235~0.2451.09994.2271.89780.08596
±0.25±0.245~0.2550.94895.1761.97520.08833
±0.26±0.255~0.2650.81495.9902.05270.09045
±0.27±0.265~0.2750.69496.6842.13010.09232
±0.28±0.275~0.2850.58997.2732.20760.09397
±0.29±0.285~0.2950.49697.7692.28510.09541
±0.30±0.295~0.3050.41698.1852.36250.09666
±0.31±0.305~0.3150.34698.5312.44000.09773
±0.32±0.315~0.3250.28798.8182.51740.09865
±0.33±0.325~0.3350.23699.0542.59490.09943
±0.34±0.335~0.3450.19399.2472.67240.10008
±0.35±0.345~0.3550.15799.4042.74980.10063
±0.36±0.355~0.3650.12799.5312.82730.10109
±0.37±0.365~0.3750.10299.6322.90470.10146
±0.38±0.375~0.3850.08199.7142.98220.10177
±0.39±0.385~0.3950.06599.7783.05970.10203
±0.40±0.395~0.4050.05199.8293.13710.10223
±0.41±0.405~0.4150.04099.8693.21460.10239
±0.42±0.415~0.4250.03199.9013.29200.10252
±0.43±0.425~0.4350.02499.9253.36950.10263
±0.44±0.435~0.4450.01999.9433.44700.10271
±0.45±0.445~0.4550.01499.9583.52440.10277
±0.46±0.455~0.4650.01199.9683.60190.10282
±0.47±0.465~0.4750.00899.9773.67930.10286
±0.48±0.475~0.4850.00699.9833.75680.10289
±0.49±0.485~0.4950.00599.9873.83430.10291
±0.50±0.495~0.5050.00399.9913.91170.10293

ズレが±0.00の割合と±0.01の割合では後者の方が倍近くになりますが、これは四捨五入して±0.01になる範囲が四捨五入して±0.00になる範囲の倍存在するからで、ここから値が大きくなるほど割合自体は減ります。50%の確率でズレは約±0.6745σ ≒ ±0.087 km2の間に入り、標準偏差 ±1σ ≒ ±0.129 km2の範囲に収まる確率は約68.27%となりますが、ズレの値にそれぞれの予想される割合を乗じて合計することで求まる、ズレの絶対値の平均はσ√(2/π) ≒ 0.7979σ ≒ 0.103 km2に収束します。

このようにちゃんと計算すると、モデル(小数点以下第三位で四捨五入し、2000個合計した場合)における丸め誤差の標準偏差σ = a√(n/12)≒ 0.13 km2 と、絶対値のみを考慮した場合の丸め誤差の平均値|m| = σ√(2/π) ≒ 0.10 km2 は一致しません。まあ[85659]で見積もった

2000前後の自治体でこの誤差を合算すると、二項分布を考えれば全国の面積合計で√2000 × 0.0025 ≒ 0.11 km2程度の丸め誤差は出て当たり前のはずですが、

の数字ともそんなに違わない値となりましたが、より正しい議論をすると以上のようになります。

以上をまとめると、小数点以下第三位で四捨五入した面積を約2000ほど足した場合、真の値との間に0.01 km2の誤差すら生じない確率はほとんどありえない(約3%程度)が、実際のズレは平均すると±0.10 km2程度ということになります。市区町村とその他未確定地域が合計約1万2000あった昭和10年の国勢調査であれば、丸め誤差の絶対値は平均0.25 km2にまで拡大します。1950年から2010年までの国勢調査報告書に記載の面積においては、総ての市区町村と未確定地域の面積の合計が全国・都道府県・郡市別面積と小数点以下第二位まで完全に一致しており、いささかの丸め誤差も存在しません。つまり2013年以前の面積調では、合計が一致するように端数を適当に処理し、実数とは異なる面積を公表していたことになります。
【追加修正:表に色々数字を追記し、説明文を修正】


… スポンサーリンク …


都道府県市区町村
落書き帳

パソコン表示スマホ表示