ホーム  •  ニュース  •  フォーラム  •  アカウント情報  •  サイト内検索  •  新規登録
 ログイン
ユーザ名:

パスワード:


パスワード紛失

新規登録
 カウントダウンブロック
カウントダウンイベントはありません
 メニュー

メイン
   地球科学のための R
     線形回帰と回帰係数が有意にゼロでないことの検定
投稿するにはまず登録を

スレッド表示 | 新しいものから 前のトピック | 次のトピック | 下へ
投稿者 スレッド
投稿日時: 2005-5-14 1:12
登録日: 2004-7-29
居住地: 地球
投稿: 303
線形回帰と回帰係数が有意にゼロでないことの検定
データ解析で、何らかのシグナル(時系列シリアルデータ)に対応する空間分布を調べることがある。EOF解析ならば、固有ベクトルがそれにあたる。しかし、それとは別に、シグナルに対する変動データの線形回帰を行い、その係数をプロットすれば、シグナルに対する変動の空間パタンを特定できる。

この係数の有意性を検討する。そのためには、帰無仮説「回帰係数はゼロである」が成り立つ確率を求め、それが十分小さいことを示す。

<続く>
投稿日時: 2005-5-15 7:06
登録日: 2004-7-29
居住地: 地球
投稿: 303
線形回帰の計算
1) データの準備:
dim(data) <- c(144*28, 12*53) 

※ 北緯20〜87.5度までの月平均海面高度気圧を通年(12ヵ月)、53年間。

2) コード
polarplot( lm(    t(data[,]) ~ ICAresult$S[,1] )$coefficient[2,],zlim=c(-500,500))
polarplot( lsfit( ICAresult$S[,1], t(data[,])  )$coefficient[2,],zlim=c(-500,500))

どちらでもよい。
ちなみに、ploarplot () は、次のような関数
polarplot <- function( eigenvector, zlim=c(-0.1,0.1), title="" )
{
  library(akima)
  phi    <- matrix(  seq(  0,357.5, 2.5),144,28)
  the    <- t(matrix(seq( 20, 87.5, 2.5),28,144))

  polardata <- interp((90-the) * ( -sin(2*pi/360 * phi) ),
                      (90-the) * (  cos(2*pi/360 * phi) ),
                      matrix(eigenvector,144))
  filled.contour(polardata, zlim=zlim, nlevels=15, plot.axes={} )
  contour(       polardata, zlim=zlim, nlevels=15, add=T )

###############                                                                                                                              
  if( is.na(file.info("/home/mori/lib/R/MAP/coast_world.rdata")$size) )
    saveworldmapdata()
  load("/home/mori/lib/R/MAP/coast_world.rdata")
###############                                                                                                                              

  for( i in seq(1,mapdata$max) )
    lines( -(90 - mapdata$data[[i]]$lat) * sin(2*pi*mapdata$data[[i]]$lon/360),
          (  90 - mapdata$data[[i]]$lat) * cos(2*pi*mapdata$data[[i]]$lon/360))

  title(title)
}


3) 結果
投稿日時: 2005-5-17 17:25
登録日: 2004-7-29
居住地: 地球
投稿: 303
相関がゼロである確率
fprob <- data[,1] * 0
for( i in 1:(144*28) ){
 fprob[i] <- cor.test( data[i,], ICAresult$S[,3],method="pearson")$p.value
}
polarplot(fprob,zlim=c(0,1))


これで、相関係数がゼロ(帰無仮説)である確率をプロットできる。0.05 以下が、95% 以上の確率で有意である場所を示す。
スレッド表示 | 新しいものから 前のトピック | 次のトピック | トップ

投稿するにはまず登録を
 


WWW を検索 meteorology.jp を検索

Powered by XOOPS 2.0 © 2001-2006 The XOOPS Project, Maitained by A. Mori
FI Theme :: XOOPS 2 Theme by ImageSquare :: Costomized by matchan and A.Mori