ベンフォードの法則とは、自然界や社会活動から測定される各数値の最大桁の数字(1〜9)(少数の場合は0は無視。0.02の場合は2)を取得すると、その分布は、一様とはならず、「1」がおよそ30%、「2」がおよそ17%、「3」がおよそ12%………「9」が5%となる、というもの。
元の計測値がべき乗則に従うのであれば、必然的に最大桁の数字もそのような分布になる、というだけの話じゃね?と思ってて、なぜこんなに使われてるのか分からん。会計監査で用いられることもあるらしい。けど、元の分布をみた方がいいんじゃないかと思っちゃうんだけど。
実際、どんなもんかなーと思って、新型コロナウィルスの日別感染者数を使ってやってみた。
実際やってみると、こんな感じ。
4〜6が多いせいで、ちょっと歪な感じになっている。赤色の折れ線は、ベンフォードの法則に完全に従う場合の分布。
元データは以下(厚生労働省のオープンデータ)
https://www.mhlw.go.jp/content/pcr_positive_daily.csv
第2波収束から第3波までの期間(9〜10月)で500前後のデータが多かったことが起因してそう。
第1波以前の停滞期は別として、ほとんどの期間で数百〜3000で推移しており、分布が偏っていると、ベンフォードの法則通りにはならない、ということが確認できる。
次に、都道府県別のデータでもやってみた。
元データは以下だが、累積の値しかなかったので、整形して新規増加分を作成した後に各値の最大桁の数を取得している。
上に示した日本全体の感染者数データを比較すると、綺麗な階段状にはなっている。単純に、大数の法則的に、サンプルが多いほど滑らかになりそう。また、各都道府県の人口規模自体もある程度冪乗に分布しているため、都道府県別に分割することによってベンフォードの法則に近くなる効果もありそう。
1、2がベンフォードの法則より多い。べき乗則に完全に従うのであれば、ベンフォードの法則通りになるはずで、そうでないというのは、べき乗則と比較して少なめに分布していることを示唆していそう。
もし感染拡大が指数関数的であれば、べき乗則に従うはずであるが、緊急事態宣言であるとかソーシャルディスタンスだとかで軽減策が実施され、指数関数的にはならない。そのために少なめに偏るんではないかと思われる。
ま、元のデータの分布を分析すれば分かることではあるんだけど……。
次に、全世界の新規感染者数の日別推移でみてみる。
元データはこちらを使用。
location列がWorldとなっているものを抽出して推移をみてみる。
明らかに異常な値が紛れ込んでしまっているが、放置。最大桁の数の分布をみるだけであれば大きく影響することはないし、面倒なので。
ガッタガタっすね……。
同じデータソースで、国別の新規感染者数もあったので、同様に最大桁の数の分布をみてみる。
かなり綺麗になった。