日々の記録簿

日々のできごとの記録

日記

surveyで相関係数を計算する

投稿日:

survey packageに相関係数を算出するコマンドがなかったのでメモ。こちらのサイトが参考になった。

library(survey)

data(api)
dstrat <- svydesign(
  id = ~1, strata = ~stype, weights = ~pw, data = apistrat, fpc = ~fpc
)

var <- svyvar(~ api00 + api99, design = dstrat)
cov2cor(as.matrix(var))

これで相関係数が算出される。標準誤差がほしい場合はややこしくなる。先のサイトでは、weights関数を使って計算している模様。

svycor <- function(model, design) {
  mf <- model.frame(model, model.frame(dstrat), na.action = na.pass)
  wts <- weights(dstrat, "sampling")

  wcors <- weights::wtd.cor(mf,
    weight = wts, bootse = TRUE, mean1 = TRUE,
    bootn = 1000, bootp = TRUE
  )
  return(wcors)
}

cors <- svycor(~api00 + api99, dstrat)

cors$correlation
cors$p.value
cors$std.err

スポンサーリンク

スポンサーリンク

-日記

執筆者:


comment

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

関連記事

さくらVPSのVNCコンソールの挙動が変(Vimiumが原因)

タイトルで言いたいことは終わっているのですが、chromeプラグインのVimiumを有効化していると、さくらVPSのVNCコンソール(html5)がうまく動きません。vimiumを無効化すると、普通に …

vim-r-pluginの導入方法

vimからRを使う、vim-r-pluginの紹介。 まあ、vimにこだわりがないなら、RStudio使ったほうが幸せになれると思います。 環境は、Arch Linuxです。 インストール vim-r …

Nvim-Rの導入方法

vimからRを使う、vim-r-pluginが、Nvim-Rに変わりました。 Neovimを使う前提ですが、tmuxを使わなくてもいいなど、いろいろ設定が楽になったと思います。 インストール まず、n …

kernel 4.2でPT3を使う

kernel 4.2にアップグレードした際に、pt3のlinuxドライバのビルドに失敗しました。 とりあえずkernelをダウングレードして凌いでいたのですが、対処方が記載されたサイトがあったので、情 …

Thinkpad X1 Carbon 2016 (4th gen)に、Arch Linuxをインストールする方法(その4)

Thinkpad X1 Carbon 2016 (4th gen)でLinuxが起動しないという問題の現状です。 最新のkernel 4.6で、OneLink+ ドックがほぼ安定して使えるようになりま …