gpt4 book ai didi

r - ggplot2 vs sm 包密度图输出(和统计分析)

转载 作者:行者123 更新时间:2023-12-01 13:18:43 24 4
gpt4 key购买 nike

考虑以下数据框示例

library('ggplot2')
library('sm')

original<-c(1:100,1)
a<-sample(original,100)
b<-rep(1:4,25)
lala<-data.frame(a,b)

我的目标是根据 lala$b 中定义的每个组 (1,2,3,4) 为 lala$a 中的值生成密度图。

为了在 ggplot2 中这样做,我可以执行以下操作

plotDensityggplot<-ggplot()+
geom_density(data = lala, aes(a, colour=factor(b)))+
theme_classic()
print(plotDensityggplot)

制作这个:

enter image description here

但是,当我使用“sm”包绘制相同数据以使用以下代码对密度进行正式比较时:

sm.density.compare(lala$a,as.numeric(lala$b),model = "equal")

密度曲线在 X 轴上延伸超过零,尽管 lala$a 中没有低于零的值

enter image description here

这是怎么回事? - 请注意,这会影响 y 轴中报告的密度。

从 sm.density.compare 获得的相等排列检验的 p 值是否可靠? - 谢谢!

最佳答案

就其值(value)而言,您可以(或多或少)通过使用基 R 的 density 预先计算密度,在 ggplot 中重现 sm 输出>(我不熟悉 sm,但我想 sm.density 在某些时候也会调用基 R 的 density)。

library(tidyverse)
lala %>%
group_by(b) %>%
summarise(tmp = list(map_dfc(c("x", "y"), ~density(a)[.x]))) %>%
unnest() %>%
ggplot(aes(x, y, colour = as.factor(b))) +
geom_line()

enter image description here

我不确定 geom_density(或 stat_density)如何调整内核密度估计参数,但您似乎对它们的控制不如 base R 的 密度.

关于r - ggplot2 vs sm 包密度图输出(和统计分析),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52031697/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com