ggplot BART(贝叶斯加性回归树)

ggplot BART(贝叶斯加性回归树),r,ggplot2,R,Ggplot2,我想请你帮我处理下面的代码。我做了一个BART,在我修复了种子和最初的灼伤后,我想制作一个ggplot,但不知怎么的,它不起作用。 我使用“beta”=5,初始燃烧=1000,MCMC=5000,固定种子=17 Xc=X=dat2[,-1] # The first column is the response Xc$z=factor((1:0)[X$z]) library(BayesTree) set.seed(17) bartFit = bart(X,dat2$y,Xc,

我想请你帮我处理下面的代码。我做了一个BART,在我修复了种子和最初的灼伤后,我想制作一个ggplot,但不知怎么的,它不起作用。 我使用“beta”=5,初始燃烧=1000,MCMC=5000,固定种子=17

Xc=X=dat2[,-1] # The first column is the response
Xc$z=factor((1:0)[X$z])
library(BayesTree)         

set.seed(17)
bartFit = bart(X,dat2$y,Xc, sigest=NA, sigdf=3, sigquant=.90, k=2.0, 
           power=5.0, base=.95,binaryOffset=0, ntree=200,  
           ndpost=4000, nskip=1000, printevery=500, keepevery=1, 
           keeptrainfits=TRUE,
           usequants=FALSE, numcut=100, printcutoffs=0,
           verbose=TRUE)
pte=apply(bartFit$yhat.train-bartFit$yhat.test,2,mean)


## This distribution is reported in the following histogram: Posterior 
distribution of ATE

ss=dat2$z==1
ggplot()+ geom_histogram(binwidth = 2.0, aes(pte[ss],weights=nw(w[ss])))+ 
geom_vline(xintercept=0)  + labs(x = "PISA Score") + xlim(c=-20,10)
我收到了以下错误消息,我不明白为什么

Warning: Ignoring unknown aesthetics: weights
Error in eval(expr, envir, enclos) : object 'pte' not found
我为另一个数据集运行相同的代码,该数据集具有相同的变量和内容,但具有2500个OB。现在,当我对这个26000 OB的数据集进行处理时,出现了一些问题

有人能理解并告诉我我做错了什么吗?这将是非常感谢,因为我不明白为什么相同的代码不适用于相同的数据集,但不同数量的OB


非常感谢

您使用的
ggplot
错误。创建一个包含所有必要变量的data.frame,并从
aes()
调用这些变量,将它们映射到适当的美学。很多例子请参见。谢谢你,罗曼。但是为什么相同的代码可以处理更小的数据集和相同的变量呢?我将查看链接,使您的示例可复制,并使您的ggplot2代码井然有序。如果你把事情做对了,这是很容易解决的。请参阅。您使用的
ggplot
错误。创建一个包含所有必要变量的data.frame,并从
aes()
调用这些变量,将它们映射到适当的美学。很多例子请参见。谢谢你,罗曼。但是为什么相同的代码可以处理更小的数据集和相同的变量呢?我将查看链接,使您的示例可复制,并使您的ggplot2代码井然有序。如果你把事情做对了,这是很容易解决的。看见