morの解析ブログ

解析疫学、リスクにまつわるメモや計算

「推定」のまわりをさぐる.教科書では「解析はMHにより行う、因子が多ければ重回帰を用いる」という風で詳しい例は少ない.独自(のつもり)な思いつきで具体に試行.
 数理を用いるべきアセスメントにも切り込む.

繰り返し処理~短く & vec を dataframe化する

・度数の範囲で繰り返し処理して、ORベクトルを作り、書き出す
・関連情報dhyper の数値をくっつけてデータフレームを作る


■ 短い書き方
     for(i in 0:7) { print(i*(22+i)/(7-i)/(16-i))}
 ベクトル化して、保存するには・・
        t0sor<-NULL
        for(i in 0:7) { t0sor <-  c( t0sor,   i*(22+i)/(7-i)/(16-i) ) }
                  繰り返し処理の書き方が格段に簡単.
   結果
> t0sor
[1] 0.0000000 0.2555556 0.6857143
[4] 1.4423077 2.8888889 6.1363636
[7] 16.8000000 Inf           
          ちゃんと無限大の結果が出ている.
   念のため、データをcsv保存する.
> write.csv(t0sor,"t0sOR.csv")
    csvを覗くと・・

          

■ 使ったデータ
 t0でのsのtable
         s1    s0  

                i = 0:7


■ ORと起こりやすさを統合したdfとするには、
      probt0s <-dhyper(0:7,7,38,16)  起こりやすさ
         pr_or<- data.frame( t0sor,probt0s )  データフレーム化
        

                       

■ 起こりやすいOR
 起こりやすいのは3,4行目、そこではOR 0.69-1.4.
■ 図示
       plot(probt0s,log(t0sor),type="s")

   

           probによるlog OR  


■ 意味
 観察したデータでt0において発生が超幾何分布するとし、主な発生が tまたはs因子によるとき、sは弱生起性または弱抑制性をもつ.また、t1においては抑制性をもつ.

×

非ログインユーザーとして返信する