如何获得重叠密度曲线下的面积?使用R计算重叠密度图的面积ggplot
我该如何解决R问题? (没有为蟒蛇这里的解决方案:Calculate overlap area of two functions)
set.seed(1234)
df <- data.frame(
sex=factor(rep(c("F", "M"), each=200)),
weight=round(c(rnorm(200, mean=55, sd=5),
rnorm(200, mean=65, sd=5)))
)
ggplot(df, aes(x=weight, color=sex, fill=sex)) +
geom_density(aes(y=..density..), alpha=0.5)
“中的情节中所使用的点由ggplot_build(返回),这样你就可以访问它们。 “所以,现在,我有点,我可以喂他们约approxfun,但我的问题是,我不知道如何减去密度函数。
任何帮助非常感谢! (而且我相信需求量很高,目前还没有解决方案。)
产生一个错误:'GRT < - ggplot(DF,AES(X =重量,颜色=性,填充=性别))+ geom_density(AES(Y = ..密度..),α= 0。5) DPB < - ggplot_build(GRT) X1 < - 分钟(其中(DPB $数据[[1]] $ X> = 50)) X2 < - MAX(其中(DPB $数据[[1 ]]> $ x <= 70)) grt + geom_area(data = data.frame(x = dpb $ data [[1]] $ x [x1:x2], \t y = dpb $ data [[1] ] $ Y [X1:X2]),AES(X = X,Y = Y),填充= “灰色”)' – user5878028
也许这http://stats.stackexchange.com/questions/97596/how-to-calculate重叠经验概率密度可以帮助 – MLavoie
谢谢,看起来不错。但是,由于重新缩放,我仍然可以获得相交的概率吗?现在就试试。 – user5878028