はじめに
ある日、友人から一通のメールが届きました。
くだらなすぎて申し訳ないんですが、薬事工業生産動態統計(厚労省)の医薬機器類にてゴムが計上されており(以下画像の下の方)、この推移を見れば日本の性生活実態が追えるということに気付いてしまった。
失業率と性生活の連動とか、政権交代で日本の性生活は盛んになったのかとかも分析できる・・・研究テーマとしていかがでしょうか。
(あと輸入品の割合が多くて意外だった)
なるほど、確かに添付された画像を見ると、ゴム(コンドーム)の生産金額が計上されており性生活の変化がわかりそう。
というわけで、コンドームの生産動向を分析してみました。
コンドームに関する統計
前述の通り、コンドームは医療機器として分類され、厚生労働省の薬事工業生産動態統計に集計されています。
www.mhlw.go.jp
↑上記ページ名は2019年1月以降とありますが、以前のデータもあります。
ですが、一つの品目(コンドーム)の生産量や生産金額の推移を一覧で示してくれるような、親切な設計にはなっていませんので、自分でデータの収集・加工が必要になります。
VBAを使ったデータのダウンロード
ひと月ごと、統計項目ごとに分かれているExcelファイルからどうやってデータを取得するか。できるだけ楽をしたい・・・。
そんな時はそう、VBAですね。
いろいろ調べて、下のようなプログラムを書いてみました。
'ファイルダウンロードのための儀式(定義文) Private Declare PtrSafe Function URLDownloadToFile Lib "urlmon" Alias "URLDownloadToFileA" _ (ByVal pCaller As Long, _ ByVal szURL As String, _ ByVal szFileName As String, _ ByVal dwReserved As Long, _ ByVal lpfnCB As Long _ ) As Long 'ファイルダウンロードのマクロ Sub download() Dim lngRes As Long Dim strURL As String Dim strPath As String strPath = "C:\------\condom\200512.xls" strURL = "https://www.mhlw.go.jp/topics/yakuji/2005/12/xls/geppou-j.xls" lngRes = URLDownloadToFile(0, strURL, strPath, 0, 0) End Sub
このプログラムでは「strPath」でファイルを保存する場所とファイル名を指定し、「strURL」で指定のURLからデータをダウンロードできます。
なお、「2005」「12」の部分に「2005~2020」「01~12」という変数を設定し、For~Next文で繰り返すことも試してみましたが、自分の知識不足でうまく動きませんでした。
さらにファイルやページの命名規則も揺れているところがあり、例えば上の「geppou-j」は「第10表」ということを示していますが、別の年では「geppou-10」になっていたり、最近のデータは拡張子が.xlsではなく.xlsxになっていたりと、自動化を断念させるような仕掛けが随所に組み込まれていました。
そのため、「2005」「12」の部分を逐一書き換えてダウンロードを繰り返さざるをえませんでした。
気分はシンジくんです。
とは言えいちいちブラウザからページに手動で飛んでファイルをダウンロード、またページを戻って繰り返し・・・とやるよりは早いと思います。
1年分(ダウンロード12回)の作業も2分くらいで済み、さかのぼれる2006年1月までデータを収集するのもあまり苦になりませんでした。
抽出して表をつくる
次は、ダウンロードしたExcelファイルからコンドームの生産に関するデータを抽出し、一つの表にまとめる作業です。
最初はこれも単純作業の繰り返しなので、マクロでvlookupかindex matchを使えないかと調べてみましたが、すぐにはわかりませんでした。
というわけで、手作業です。行をコピーし集計シートに貼り付ける作業の繰り返しです。
Excelファイルを何十個も開いているとだんだん動作が不安定になってくるので、適宜消しながら進めました。
なお、あまりにも多すぎると一気に閉じる途中でクラッシュし、勝手に復元(何十ものファイルを再度すべて開く)してしまうようです。
データを並べてグラフ化
集計シートに集め終わったら、推移を見るために折れ線グラフを作成します。
こんな感じになりました。
見ての通りがたつきが大きいのと、2019年からは集計方法が変わったらしく、それまでのデータとの連続性という観点からこのままでは使用が難しいものとなっています。
ここで登場する統計手法が「季節調整」です。
季節調整
この「季節調整」という言葉は、ニュースで聞いたことがある方もいるのではないでしょうか。
有名なところですとGDPなどで「季節調整値はいくらで~」といった報道を目にしますね。
では、そもそも季節調整とは何なのか。
例えば、夏になって気温が高くなるとビールが売れるようになったり、反対に夏場は電力消費を抑えたり、お盆休みのために工場の稼働率が減少することで工業品の生産量が少なくなる傾向があります。
こうした季節性、特定の時期に起きる特有の事象による増減幅を取り除く手法が季節調整です。
コンドームの生産金額を月別で表すと下のようになります。
ここからわかることとして、コンドームも工業品であるためにお盆の8月に生産が減少、12月は賞与やクリスマスで消費量が多く、それに伴うように生産も多くなるのではないかということが推測できます。
こうした季節性を取り除くために、データを加工します。
今回は、以下のサイトを参考にして季節調整を行いました。
bdastyle.net
簡単に説明すると、前後計12か月のデータを平均し、その数値と実測値の比を計算、それらのトリム平均(最大値と最小値を除いた平均)から補正値を算出、補正値で実測値を割り季節調整済系列を算出、その前後3期の移動平均の算出を2回繰り返して3×3期移動平均を算出、といった具合です。(全然簡単に説明できていない)
考察
季節調整処理を行い、できあがったものがこちらになります。(料理番組風)
青いグラフが元のデータ、オレンジが季節調整済データ、黒が季節調整の後に3×3期移動平均をとったデータです。
こうして見ると、2009年後半から大きく生産量が上昇し、それが2010年終わりまで続いています。
この期間に何があったかと言うと、政権交代ですね。
それまでじわじわ減少していた生産金額が、鳩山政権発足を機に上昇に転じているのは興味深いです。
その後退陣し、菅直人政権になると生産金額は減少していくこととなり、そこからはじわじわと上昇が続いています。
鳩山政権はコンドーム業界にとってプラス材料だったのでしょうか。
ここで生産量も見てみましょう。
明らかに飛びぬけている外れ値は後述するとして、生産量は生産金額ほど変化がみられないようです。
あとは、生産金額を生産量で割った単価を調べてみましょうか。
コンドームは大体1個10円前後で生産されているようです。ここにも外れ値がありますね。
2019年から統計方法が変わったことにより生産金額が大きく増えたため、単価も増加しています。
面白いと感じたのは、景気変動にあまりコンドーム単価は左右されていないということでしょうか。
ちなみに失業率の推移は下のようになっています。
こちらも政権交代を境に徐々に減少しているので、コンドームの生産金額と失業率との間には負の相関関係があるとも言えるかもしれませんね。
最後に外れ値についてですが、2006年4月の生産量が他の月と比べて10分の1ほどになっており、そのために単価も飛びぬけて大きくなっています。
これは集計ミスかと思いますので、もしも厚労省の関係者がここを見ていたら、こっそり修正しておいてくださいな。
また2013年2月の生産量も桁を1つ間違えているのではないかと思うくらいの値なので、見直してもらえると助かります。
ちなみに以前にも個人ブログでコンドーム出荷量の外れ値を指摘していた方がおり、厚労省が修正するということがあったので、今回も直る可能性があるかもと思っています。
▼先駆者様のブログはこちら
www.gorannosponsor.net
おわりに
自分が興味ある分野の統計に触れ、実際に手を動かすことで、季節調整について少し理解できたように思います。
なぜさかのぼって前のデータが改訂されるのか、なんとなくわかったような気になりました。
まだまだ専門家には遠く及びませんが、こうして自分でやってみる姿勢は今後も大切にしていきたいところです。