データの入力

データを0,1に変換

dw1_q133 <- ifelse(dw1$q133 %in% c(1, 2), 0, ifelse(dw1$q133 %in% c(3, 4), 1, NA))
dw1_q138 <- ifelse(dw1$q138 %in% c(1, 2), 0, ifelse(dw1$q138 %in% c(3, 4), 1, NA))
dw1_q136 <- ifelse(dw1$q136 %in% c(1, 2), 0, ifelse(dw1$q136 %in% c(3, 4), 1, NA))
dw1_q137 <- ifelse(dw1$q137 %in% c(1, 2), 0, ifelse(dw1$q137 %in% c(3, 4), 1, NA))
dw1_q135 <- ifelse(dw1$q135 %in% c(1, 2), 0, ifelse(dw1$q135 %in% c(3, 4), 1, NA))
dw1_q139 <- ifelse(dw1$q139 %in% c(1, 2), 0, ifelse(dw1$q139 %in% c(3, 4), 1, NA))

dw2_q133 <- ifelse(dw2$q133 %in% c(1, 2), 0, ifelse(dw2$q133 %in% c(3, 4), 1, NA))
dw2_q138 <- ifelse(dw2$q138 %in% c(1, 2), 0, ifelse(dw2$q138 %in% c(3, 4), 1, NA))
dw2_q136 <- ifelse(dw2$q136 %in% c(1, 2), 0, ifelse(dw2$q136 %in% c(3, 4), 1, NA))
dw2_q137 <- ifelse(dw2$q137 %in% c(1, 2), 0, ifelse(dw2$q137 %in% c(3, 4), 1, NA))
dw2_q135 <- ifelse(dw2$q135 %in% c(1, 2), 0, ifelse(dw2$q135 %in% c(3, 4), 1, NA))
dw2_q139 <- ifelse(dw2$q139 %in% c(1, 2), 0, ifelse(dw2$q139 %in% c(3, 4), 1, NA))

dw3_q133 <- ifelse(dw3$q133 %in% c(1, 2), 0, ifelse(dw3$q133 %in% c(3, 4), 1, NA))
dw3_q138 <- ifelse(dw3$q138 %in% c(1, 2), 0, ifelse(dw3$q138 %in% c(3, 4), 1, NA))
dw3_q136 <- ifelse(dw3$q136 %in% c(1, 2), 0, ifelse(dw3$q136 %in% c(3, 4), 1, NA))
dw3_q137 <- ifelse(dw3$q137 %in% c(1, 2), 0, ifelse(dw3$q137 %in% c(3, 4), 1, NA))
dw3_q135 <- ifelse(dw3$q135 %in% c(1, 2), 0, ifelse(dw3$q135 %in% c(3, 4), 1, NA))
dw3_q139 <- ifelse(dw3$q139 %in% c(1, 2), 0, ifelse(dw3$q139 %in% c(3, 4), 1, NA))

dw4_q133 <- ifelse(dw4$q133 %in% c(1, 2), 0, ifelse(dw4$q133 %in% c(3, 4), 1, NA))
dw4_q138 <- ifelse(dw4$q138 %in% c(1, 2), 0, ifelse(dw4$q138 %in% c(3, 4), 1, NA))
dw4_q136 <- ifelse(dw4$q136 %in% c(1, 2), 0, ifelse(dw4$q136 %in% c(3, 4), 1, NA))
dw4_q137 <- ifelse(dw4$q137 %in% c(1, 2), 0, ifelse(dw4$q137 %in% c(3, 4), 1, NA))
dw4_q135 <- ifelse(dw4$q135 %in% c(1, 2), 0, ifelse(dw4$q135 %in% c(3, 4), 1, NA))
dw4_q139 <- ifelse(dw4$q139 %in% c(1, 2), 0, ifelse(dw4$q139 %in% c(3, 4), 1, NA))

dw5_q133 <- ifelse(dw5$q133 %in% c(1, 2), 0, ifelse(dw5$q133 %in% c(3, 4), 1, NA))
dw5_q138 <- ifelse(dw5$q138 %in% c(1, 2), 0, ifelse(dw5$q138 %in% c(3, 4), 1, NA))
dw5_q136 <- ifelse(dw5$q136 %in% c(1, 2), 0, ifelse(dw5$q136 %in% c(3, 4), 1, NA))
dw5_q137 <- ifelse(dw5$q137 %in% c(1, 2), 0, ifelse(dw5$q137 %in% c(3, 4), 1, NA))
dw5_q135 <- ifelse(dw5$q135 %in% c(1, 2), 0, ifelse(dw5$q135 %in% c(3, 4), 1, NA))
dw5_q139 <- ifelse(dw5$q139 %in% c(1, 2), 0, ifelse(dw5$q139 %in% c(3, 4), 1, NA))

wave1

#平均を出す
dw1_1<- (dw1_q133+dw1_q138)/2
dw1_2<- (dw1_q136+dw1_q137)/2
dw1_3<- (dw1_q135+dw1_q139)/2


#0, 0.5, 1でのデータセットを作る
dw1_01 <- data.frame(dw1_1=dw1_1,dw1_2=dw1_2,dw1_3=dw1_3, w_jp=dw1$w_jp)
#NAの削除
dw1_01 <- na.omit(dw1_01)
head(dw1_01)

wave2

#平均を出す
dw2_1<- (dw2_q133+dw2_q138)/2
dw2_2<- (dw2_q136+dw2_q137)/2
dw2_3<- (dw2_q135+dw2_q139)/2


#0, 0.5, 1でのデータセットを作る
dw2_01 <- data.frame(dw2_1=dw2_1,dw2_2=dw2_2,dw2_3=dw2_3, w_jp=dw2$w_JP)
#NAの削除
dw2_01 <- na.omit(dw2_01)
head(dw2_01)

wave3

#平均を出す
dw3_1<- (dw3_q133+dw3_q138)/2
dw3_2<- (dw3_q136+dw3_q137)/2
dw3_3<- (dw3_q135+dw3_q139)/2


#0, 0.5, 1でのデータセットを作る
dw3_01 <- data.frame(dw3_1=dw3_1,dw3_2=dw3_2,dw3_3=dw3_3, w_jp=dw3$JPweight)
#NAの削除
dw3_01 <- na.omit(dw3_01)
head(dw3_01)

wave4

#平均を出す
dw4_1<- (dw4_q133+dw4_q138)/2
dw4_2<- (dw4_q136+dw4_q137)/2
dw4_3<- (dw4_q135+dw4_q139)/2


#0, 0.5, 1でのデータセットを作る
dw4_01 <- data.frame(dw4_1=dw4_1,dw4_2=dw4_2,dw4_3=dw4_3, w_jp=dw4$w)
#NAの削除
dw4_01 <- na.omit(dw4_01)
head(dw4_01)

wave5

#平均を出す
dw5_1<- (dw5_q133+dw5_q138)/2
dw5_2<- (dw5_q136+dw5_q137)/2
dw5_3<- (dw5_q135+dw5_q139)/2


#0, 0.5, 1でのデータセットを作る
dw5_01 <- data.frame(dw5_1=dw5_1,dw5_2=dw5_2,dw5_3=dw5_3, w_jp=dw5$w)
#NAの削除
dw5_01 <- na.omit(dw5_01)
head(dw5_01)

データフレーム作成

#まとめ用のデータフレーム作成

df_dw11 <- data.frame(
  wave = c (1,1,1,2,2,2,3,3,3,4,4,4,5,5,5),
  treat = c("A","B","C","A","B","C","A","B","C","A","B","C","A","B","C"),#Aは(q133+q138)/2, Bは(q13+q137)/2, Cは(q135+q139)/2
  Mean = 1,
  SD=1,
  Error=1
)

wave1

#上のデータフレームにウェイトを掛けた平均値を挿入

library(pollster)
df_dw11[1,3] <- wtd_mean(df = dw1_01[!is.na(dw1_01$w_jp) & !is.na(dw1_01$dw1_1),], variable = dw1_1, weight = w_jp)
df_dw11[2,3] <- wtd_mean(df = dw1_01[!is.na(dw1_01$w_jp) & !is.na(dw1_01$dw1_2),], variable = dw1_2, weight = w_jp)
df_dw11[3,3] <- wtd_mean(df = dw1_01[!is.na(dw1_01$w_jp) & !is.na(dw1_01$dw1_3),], variable = dw1_3, weight = w_jp)
#上のデータフレームにウェイトを掛けたstdを挿入
library(Hmisc)
## 
##  次のパッケージを付け加えます: 'Hmisc'
##  以下のオブジェクトは 'package:memisc' からマスクされています:
## 
##     %nin%, html, Mean
##  以下のオブジェクトは 'package:base' からマスクされています:
## 
##     format.pval, units
df_dw11[1,4] <- wtd.var(dw1_01$dw1_1,dw1_01$w_jp)
df_dw11[2,4] <- wtd.var(dw1_01$dw1_2,dw1_01$w_jp)
df_dw11[3,4] <- wtd.var(dw1_01$dw1_3,dw1_01$w_jp)
#上のデータフレームにウェイトを掛けたstandard Errorを挿入
library(diagis)
df_dw11[1,5] <- weighted_se(dw1_01$dw1_1,dw1_01$w_jp)
df_dw11[2,5] <- weighted_se(dw1_01$dw1_2,dw1_01$w_jp)
df_dw11[3,5] <- weighted_se(dw1_01$dw1_3,dw1_01$w_jp)

wave2

#上のデータフレームにウェイトを掛けた平均値を挿入

library(pollster)
df_dw11[4,3] <- wtd_mean(df = dw2_01, variable = dw2_1, weight = w_jp)
df_dw11[5,3] <- wtd_mean(df = dw2_01, variable = dw2_2, weight = w_jp)
df_dw11[6,3] <- wtd_mean(df = dw2_01, variable = dw2_3, weight = w_jp)
#上のデータフレームにウェイトを掛けたstdを挿入
library(Hmisc)

df_dw11[4,4] <- wtd.var(dw2_01$dw2_1,dw2_01$w_jp)
df_dw11[5,4] <- wtd.var(dw2_01$dw2_2,dw2_01$w_jp)
df_dw11[6,4] <- wtd.var(dw2_01$dw2_3,dw2_01$w_jp)
#上のデータフレームにウェイトを掛けたstandard Errorを挿入
library(diagis)
df_dw11[4,5] <- weighted_se(dw2_01$dw2_1,dw2_01$w_jp)
df_dw11[5,5] <- weighted_se(dw2_01$dw2_2,dw2_01$w_jp)
df_dw11[6,5] <- weighted_se(dw2_01$dw2_3,dw2_01$w_jp)

wave3

#上のデータフレームにウェイトを掛けた平均値を挿入

library(pollster)
df_dw11[7,3] <- wtd_mean(df = dw3_01, variable = dw3_1, weight = w_jp)
df_dw11[8,3] <- wtd_mean(df = dw3_01, variable = dw3_2, weight = w_jp)
df_dw11[9,3] <- wtd_mean(df = dw3_01, variable = dw3_3, weight = w_jp)
#上のデータフレームにウェイトを掛けたstdを挿入
library(Hmisc)

df_dw11[7,4] <- wtd.var(dw3_01$dw3_1,dw3_01$w_jp)
df_dw11[8,4] <- wtd.var(dw3_01$dw3_2,dw3_01$w_jp)
df_dw11[9,4] <- wtd.var(dw3_01$dw3_3,dw3_01$w_jp)
#上のデータフレームにウェイトを掛けたstandard Errorを挿入
library(diagis)
df_dw11[7,5] <- weighted_se(dw3_01$dw3_1,dw3_01$w_jp)
df_dw11[8,5] <- weighted_se(dw3_01$dw3_2,dw3_01$w_jp)
df_dw11[9,5] <- weighted_se(dw3_01$dw3_3,dw3_01$w_jp)

wave4

#上のデータフレームにウェイトを掛けた平均値を挿入

library(pollster)
df_dw11[10,3] <- wtd_mean(df = dw4_01, variable = dw4_1, weight = w_jp)
df_dw11[11,3] <- wtd_mean(df = dw4_01, variable = dw4_2, weight = w_jp)
df_dw11[12,3] <- wtd_mean(df = dw4_01, variable = dw4_3, weight = w_jp)
#上のデータフレームにウェイトを掛けたstdを挿入
library(Hmisc)

df_dw11[10,4] <- wtd.var(dw4_01$dw4_1,dw4_01$w_jp)
df_dw11[11,4] <- wtd.var(dw4_01$dw4_2,dw4_01$w_jp)
df_dw11[12,4] <- wtd.var(dw4_01$dw4_3,dw4_01$w_jp)
#上のデータフレームにウェイトを掛けたstandard Errorを挿入
library(diagis)
df_dw11[10,5] <- weighted_se(dw4_01$dw4_1,dw4_01$w_jp)
df_dw11[11,5] <- weighted_se(dw4_01$dw4_2,dw4_01$w_jp)
df_dw11[12,5] <- weighted_se(dw4_01$dw4_3,dw4_01$w_jp)

wave5

#上のデータフレームにウェイトを掛けた平均値を挿入

library(pollster)
df_dw11[13,3] <- wtd_mean(df = dw5_01, variable = dw5_1, weight = w_jp)
df_dw11[14,3] <- wtd_mean(df = dw5_01, variable = dw5_2, weight = w_jp)
df_dw11[15,3] <- wtd_mean(df = dw5_01, variable = dw5_3, weight = w_jp)
#上のデータフレームにウェイトを掛けたstdを挿入
library(Hmisc)

df_dw11[13,4] <- wtd.var(dw5_01$dw5_1,dw5_01$w_jp)
df_dw11[14,4] <- wtd.var(dw5_01$dw5_2,dw5_01$w_jp)
df_dw11[15,4] <- wtd.var(dw5_01$dw5_3,dw5_01$w_jp)
#上のデータフレームにウェイトを掛けたstandard Errorを挿入
library(diagis)
df_dw11[13,5] <- weighted_se(dw5_01$dw5_1,dw5_01$w_jp)
df_dw11[14,5] <- weighted_se(dw5_01$dw5_2,dw5_01$w_jp)
df_dw11[15,5] <- weighted_se(dw5_01$dw5_3,dw5_01$w_jp)

df_dw11
##    wave treat      Mean         SD       Error
## 1     1     A 0.7707542 0.10373222 0.011356015
## 2     1     B 0.6806576 0.12959939 0.012504780
## 3     1     C 0.4563953 0.16522350 0.014240932
## 4     2     A 0.7008549 0.12898820 0.014627757
## 5     2     B 0.6741710 0.13324390 0.014619644
## 6     2     C 0.5242035 0.16567212 0.016519246
## 7     3     A 0.8504783 0.06513056 0.007002674
## 8     3     B 0.6678555 0.12218912 0.009101941
## 9     3     C 0.6348446 0.07292866 0.007209395
## 10    4     A 0.7870017 0.08365574 0.009997702
## 11    4     B 0.4398208 0.11712582 0.011659916
## 12    4     C 0.6510420 0.07393367 0.009129476
## 13    5     A 0.4643599 0.01657327 0.005469613
## 14    5     B 0.4629958 0.04107767 0.009322684
## 15    5     C 0.6321523 0.05840770 0.009775844
library(ggplot2)
library(ggsci)

g <- ggplot(df_dw11, aes(x = wave, y = Mean, color = treat))
g <- g + geom_line()
g <- g + scale_color_nejm()
g <- g + geom_errorbar(aes(ymin = Mean - SD, ymax = Mean + SD, width = 0.3))
plot(g)