日々の記録簿

日々のできごとの記録

TIMSS

RによるTIMSS2011の分析(survey packageを使う)

投稿日:

RでTIMSSを分析するときは、intsvy packageが便利です。ただ、簡単すぎて内部で何をやっているのかわからない/可能な分析方法が少なく応用が効かないというデメリットもあります。

そこで今回は、survey packageを使って、TIMSSを分析することを考えます。

Replicate Weightの生成

TIMSSのデータセットには、Replicate Weightが存在しない。そのため、分析者が各自で生成する必要がある。

ここでは、TIMSS 2011の日本のデータを例に、Replicate Weightを生成する方法を考える。

TIMSSのReplicate Weightの生成ルールは、次の通り。

  • Replicate Weightは75個生成する
  • i個目のReplicate Weightは、JKZONEがiの標本について、JKREPが1ならば当該標本のWeightを2倍にし、これをReplicate Weightとする。同じくJKZONEがiの標本について、JKREPが0ならば当該標本のReplicate Weightは0となる。JKZONEがi以外の標本については、当該標本のWeightがReplicate Weightとなる
# 必要なlibraryの読込
library(foreign)
library(survey)

# 日本のデータを読み込み
jp11 <- read.spss("asgjpnm5.sav", use.value.labels=F, to.data.frame=T)

# replicate weightの生成
# TOTWGTを例にする
W <- data.frame(sapply(1:75, 
                       function(i){
                         ifelse(jp11[["JKZONE"]] == i, 
                                2 * jp11[["TOTWGT"]] * jp11[["JKREP"]], 
                                jp11[["TOTWGT"]])
                       }
                       )
)

# データセットの結合
jp11 <- cbind(jp11, W)

survey designの指定

続いて、survey designを指定し、分析を実行する。

jp <- svrepdesign(data=jp11,
                  repweights="X[0-9]",
                  weights=~TOTWGT,
                  combined.weights=TRUE,
                  type="JK1",
                  mse=TRUE,
                  scale=1,
                  rscales=1
                  )

# 分析の実行
svymean(jp11$ASBG04, design=jp, na.rm=T)

svymean(jp11$ASMMAT01, design=jp)

svyglm(ASMMAT01 ~ ITSEX + ASBG04, design=jp)

基本的な分析方法は以上。なお、survey packageでは、PVsの計算は行えないので、5つのPVを統合する作業は、分析者が行う必要がある。

スポンサーリンク

スポンサーリンク

-TIMSS

執筆者:


comment

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

関連記事

TIMSS報告書で標準誤差はどのように計算されているのか?

TIMSS報告書の標準誤差(PVsを使った場合)は、正規の式による計算ではなく、ショートカット計算になっています。 TIMSSを使った分析をしていて、報告書と数値が合わない・・・となった方の参考になる …

TIMSS2011から公立中学校と国・私立中学校の成績差を見てみる

タイトルのとおりですが、TIMSS2011を利用して、国・私立中学校と公立中学校の成績差を見てみます。 とりあえず、平均点の差を検討する TIMSS2011の学校質問紙や生徒質問紙では、生徒が通ってい …

TIMSS2015の分析方法とintsvyの使い方

RでPISAやTIMSSを分析するためのintsvy packageの使い方が大きく変わっていたので、その紹介。本当はだいぶ前に変わっていたのだと思うが、気づいていなかった・・・。 データの読込 ここ …

RによるTIMSS2011の分析(学校・教員ファイルを使う)

RによるTIMSS2011の分析方法(その2)です。今回は、学校・教員ファイルを使った分析を行います。 データの読み込み RによるTIMSSの分析を可能にするため、例によってintsvy packag …

RによるTIMSS2011の分析

RによるTIMSS2011の分析方法です。 データの読み込み SPSSデータを読み込むために、foreign packageを読み込みます。 また、RによるTIMSSの分析を可能にするため、intsv …