R 预测数据集中不同国家的概率

R 预测数据集中不同国家的概率,r,R,下面是我运行glmer回归模型后用来生成预测概率的代码。下面的代码可以很好地生成一个图表,显示数据框中所有欧盟内部贸易份额值的预测概率 #GRAPH OF SITC 1 intra-eu trade share tmpdat1 <- multi.sanctions.bust1.full@frame[, c("caseid", "lndist", "lnlaggdpt", "duration", "partnercode", "lnlaggdpp", "lagtradeopenP", "l

下面是我运行glmer回归模型后用来生成预测概率的代码。下面的代码可以很好地生成一个图表,显示数据框中所有欧盟内部贸易份额值的预测概率

#GRAPH OF SITC 1 intra-eu trade share 
tmpdat1 <- multi.sanctions.bust1.full@frame[, c("caseid", "lndist", "lnlaggdpt", "duration", "partnercode", "lnlaggdpp", "lagtradeopenP", "lageutradeshare100", "lagsitc1100","EUmem", "nobust1", "nobust1sq", "nobust1cb", "colonial", "lagtradecontrol1", "SEM")]

jvalues1eu <- with(multi.sanctions.bust1.full, seq(from = min(multi.sanctions.bust1.full@frame[["lageutradeshare100"]]), to = max(multi.sanctions.bust1.full@frame[["lageutradeshare100"]]), length.out = 100))

pp1eu <- lapply(jvalues1eu, function(j) {
  tmpdat1$lageutradeshare100 <- j
  predict(multi.sanctions.bust1.full, newdata = tmpdat1, type = "response", re.form = NULL)
})

#subset(multi.sanctions.bust1.full@frame,allbuster1==0)

#sapply(pp1[c(0, 1, 2, 3, 4, 5)], mean)

plotdat1eu <- t(sapply(pp1eu, function(x) {
    c(M = mean(x), Med = median(x), quantile(x, c(0.25, 0.75), na.rm = TRUE), (mean(x)-(2*sd(x))),
      (mean(x)+(2*sd(x))))
}))

plotdat1eu <- as.data.frame(cbind(plotdat1eu, jvalues1eu))
colnames(plotdat1eu) <- c("PredictedProbabilityMean", "PredProbMedian", "quartile1", "quartile3", "lowersd", "uppersd", "lageutradeshare100")
head(plotdat1eu)
tail(plotdat1eu)

sitc1eu <- ggplot() + geom_line(data=plotdat1eu, aes(x = lageutradeshare100, y = PredictedProbabilityMean), size = 2, color="blue") + 
  geom_ribbon(data=plotdat1eu, aes(x = lageutradeshare100, ymin = lowersd, ymax = uppersd),
              fill = "grey50", alpha=.5) +
  ylim(c(-0.25, 0.55)) + 
  geom_hline(yintercept=0) +
    geom_rug(data=subset(multi.sanctions.bust1.full@frame,allbuster1==0), aes(x=lageutradeshare100), color="black", size=1.0, sides="b", alpha= 3/4, length = unit(0.05, "npc")) +
    geom_rug(data=subset(multi.sanctions.bust1.full@frame,allbuster1==1), aes(x=lageutradeshare100), color="red", size=1.0, sides="b", alpha = 1) +  
 theme(panel.grid.major = element_line(colour = "gray", linetype = "dotted"), panel.grid.minor = element_blank(), panel.background = element_blank(), axis.title.y = element_text(size=14, face="bold"), axis.title.x = element_text(size=14, face="bold")) +
  xlab("Intra-EU Trade Share") + 
  ylab("Probability of Sanctions Busting") + facet_wrap(~partnercode,nrow=4)

sitc1eu
#SITC 1欧盟内部贸易份额图

tmpdat1也许您应该提供一个您试图绘制的数据的可复制示例,以便人们能够帮助您。(请参阅:)您需要将partnercode作为变量包含在plotdat1eu中,并且应该能够完成镶嵌面环绕。我看不出上面代码中的任何地方都在使用partnercode,如果您提供一些示例数据和突出显示您的problem@StupidWolfpartnercode位于tmpdat1的第一行代码中。我将努力编辑我的问题。