2017-07-19 1 views
0

interplotを使用して因子変数の相互作用をプロットする必要があります。重要な部分を除いてすべてを把握することができました。プロットされた。ここでは、問題を示す複製の例です:因子を相互作用させるときのプロットラベル

set.seed(507) 
df <- data.frame(
    outcome = sample(1:7, 1000, replace = T), 
    scale = sample(1:7, 1000, replace = T), 
    dummy = sample(0:2, 1000, replace = T)) 

# factor the dummy 
df$dummyf <- factor(df$dummy) 

# linear model 
lm.out <- lm(outcome ~ scale * dummyf, data = df) 

# interplot 
library(interplot) 
interplot(lm.out, "dummyf", "scale", plot = T, hist = F, ci = 0.95) 

私は対話をプロットすると、ここで私が得るものです:

enter image description here は今、私は読むための面でdummyf1dummyf2ラベルを変更できるようにする必要があります本質的にLABEL1およびLABEL2。ここに私が試したの可能な解決策はありますが、それは私が必要なものを私に取得されていません。

# possible solution? 
levels(df$dummyf)[levels(df$dummyf) == 1] <- "LABEL1" 
levels(df$dummyf)[levels(df$dummyf) == 2] <- "LABEL2" 

# linear model 
lm.out.1 <- lm(outcome ~ scale * dummyf, data = df) 

# interplot 
library(interplot) 
interplot(lm.out, "dummyf", "scale", plot = T, hist = F, ci = 0.95) 

interplotggplot2を使用していますが、それはどちらかの仕事を得ることができていないので、私もggplot2のファセットを変更しようとしました。助言がありますか?前もって感謝します!

答えて

0

underlying codeを変更する必要があります。それは単にレベルではなく、変数名に整数を追加するだけです。

この問題を回避するには、次のようになります。

library(interplot) 
set.seed(507) 
df <- data.frame(
    outcome = sample(1:7, 1000, replace = T), 
    scale = sample(1:7, 1000, replace = T), 
    dummy = sample(0:2, 1000, replace = T)) 

# factor the dummy 
df$LABEL <- factor(df$dummy) 
# df$LABEL <- df$dummyf 
lm.out.1 <- lm(outcome ~ scale * LABEL, data = df) 
interplot(lm.out.1, "LABEL", "scale", plot = T, hist = F, ci = 0.95) 
関連する問題