我是R的新手,我正在尝试根据for循环的结果创建一个情节。我正在使用BayesFactor包找到几个贝叶斯因子
N <- seq (10, 500, by = 5)
for (i in 1:length(N)) {ttest.tstat(2.24, N[i], simple = TRUE}
现在我想用N(在x轴上)和BayesFactors(在y轴上)创建一个基本图。如何将生成的贝叶斯因子从for循环转换为向量?
谢谢!
答案 0 :(得分:0)
类似的东西:
N <- seq (10, 500, by = 5)
tstat_vec = sapply(N, ttest.stat, t = 2.24, simple = TRUE)
plot(N, tstat_vec)
应该这样做。
或使用ggplot2
:
df = data.frame(N = N, tstat = tstat_vec)
ggplot(df) + geom_point(aes(x = N, y = tstat))
答案 1 :(得分:0)
我找到的另一种方法(坚持for循环)是
N <- seq(10, 500, by=5)
BF <- rep(0, 99)
for (i in 1:length(N)) {BF[i]=ttest.tstat(2.24, N[i], simple=TRUE)[[1]]}
plot.default(N,BF)
这也可以解决问题。