« また来年 | トップページ | 月が綺麗 »

2010年12月22日 (水)

年齢別一般信頼の近似曲線作成

ベイズ推計のプログラムをつかって、日本の年齢別一般信頼の近似曲線を求めてみました。

Photo

第5波世界価値観調査の日本のデータから作成した年齢別集計は上の通りです。20歳と55歳にピークのある分布をしています。これを年齢の三次関数で近似する式をベイズ推計でもとめてみました。

年齢をxとして,xにおける信頼率の近似式を

 y(x)=ax^3+bx^2+cx+d

とします。年齢xで「信頼する」と答えた人数をn1(x)、「用心する」と答えた人数をn2(x)とし、事前分布を一様分布とすると

 事後分布 ∝ Πy(x)^n1(x)*(1-y(x))^n2(x)

となります(Πはxについて総積をとる)。これでパラメーターa、b、c、dの確率分布を示す式が得られました。

メトロポリス法のプログラムを用いてa、b、c、dの平均を求めたいのですが、そのためには前回のプログラムを4変数に拡張する必要があります。初期値を

  A = 0
  B = 0
  C = 0
  D = 0.5

とし、移動先の候補値を

  AM = A + (0.5 - Rnd) * 0.05
  BM = B + (0.5 - Rnd) * 0.05
  CM = C + (0.5 - Rnd) * 0.05
  DM = D + (0.5 - Rnd) * 0.05

とするプログラムを組んで5000回ランダムウォークさせ、はじめの1000回を飛ばして平均を求めたところ次のようになりました。

 a=-0.279
 b= 0.056
 c= 0.170
 d= 0.374

ただしxは15歳から75歳を-1から1までの値に変換したものを使っています。これを使って近似曲線を図示すると次のようになります。15歳と40歳で誤差が大きくなっていますが、まあまあよく再現できているといえるでしょう。

Photo_2

a、b、c、dのセットは最初の1000セットを除外して4000セット得られています。これから10セットをランダムに選んで近似曲線を図示すると次のようになりました(赤の曲線。紺が実測値)。本当は100セットくらいサンプリングした方がいいのでしょうけど、色を揃えるのが面倒なので10セットにしましたが、各年齢について15ポイントほどの幅があることがわかります。

Photo_3

100本引いて95本の通る範囲を求めれば95%信頼区間が得られる勘定になりますが、これでも誤差の大きさの目安ぐらいにはなるでしょう。各年齢50人~100人ほどのサンプル数であることを考えれば妥当な結果だと思います。誤差の範囲に実測値は大体収まっていますので、三次式による近似もそこそこ有効なようです。

このテクニックを使えば年齢の刻み方が違っていたり、年齢別データが断片的に得られていたりするようなデータを「同化」することができるはずです。次の課題といえるでしょう。

|

« また来年 | トップページ | 月が綺麗 »

コメント

コメントを書く



(ウェブ上には掲載しません)




トラックバック

この記事のトラックバックURL:
http://app.cocolog-nifty.com/t/trackback/121873/50369124

この記事へのトラックバック一覧です: 年齢別一般信頼の近似曲線作成:

« また来年 | トップページ | 月が綺麗 »