gpt4 book ai didi

r - ggplot2中的geom_density和base R中的density的区别

转载 作者:行者123 更新时间:2023-12-01 10:51:56 25 4
gpt4 key购买 nike

我在 R 中有如下数据:

  bag_id location_type            event_ts
2 155 sorter 2012-01-02 17:06:05
3 305 arrival 2012-01-01 07:20:16
1 155 transfer 2012-01-02 15:57:54
4 692 arrival 2012-03-29 09:47:52
10 748 transfer 2012-01-08 17:26:02
11 748 sorter 2012-01-08 17:30:02
12 993 arrival 2012-01-23 08:58:54
13 1019 arrival 2012-01-09 07:17:02
14 1019 sorter 2012-01-09 07:33:15
15 1154 transfer 2012-01-12 21:07:50

其中 class(event_ts) 是 POSIXct

我想找出不同时间每个地点的行李密度。

我使用了命令 geom_density(ggplot2) 并且我可以很好地绘制它。我想知道 density(base) 和这个命令之间是否有任何区别。我的意思是他们使用的方法或他们使用的默认带宽等方面的任何差异。

我需要将密度添加到我的数据框中。如果我使用函数 density(base),我知道如何使用函数 approxfun 将这些值添加到我的数据框中,但我想知道它是否是当我使用 geom_density(ggplot2) 时也是如此。

最佳答案

快速浏览 ggplot2 documentation for geom_density()表明它包含了 stat_density() 中的功能。那里的第一个参数引用来自基本函数 density()adjust 参数。因此,对于您的直接问题 - 它们是基于相同的功能构建的,尽管使用的确切参数可能不同。您可以对设置这些参数进行一些控制,但您可能无法获得所需的灵 active 。

使用 geom_density() 的一种替代方法是在 ggplot() 之外计算您想要的密度,然后使用 geom_line() 。例如:

library(ggplot2)
#100 random variables
x <- data.frame(x = rnorm(100))
#Calculate own density, set parameters as you desire
d <- density(x$x)
x2 <- data.frame(x = d$x, y = d$y)

#Using geom_density()
ggplot(x, aes(x)) + geom_density()
#Using home grown density
ggplot(x2, aes(x,y)) + geom_line(colour = "red")

在这里,它们给出了几乎相同的图,尽管它们可能会因您的数据和设置而有更大的差异。

关于r - ggplot2中的geom_density和base R中的density的区别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18162425/

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