我正在尝试将一个KDE除以另一个KDE,以产生一条连续的线,其中任意点X处的Y值等于两个初始KDE在该点X处的值的比率。
下面是一个可复现的示例,按照所需的格式。我想要将d2除以d1,生成一个第三条线,其X值从4到8,Y值范围从零(对于所有Y组件为零的X值)到大约2(当d2的Y组件大约是d1的两倍时,如在X值约为7的位置)。
下面是一个可复现的示例,按照所需的格式。我想要将d2除以d1,生成一个第三条线,其X值从4到8,Y值范围从零(对于所有Y组件为零的X值)到大约2(当d2的Y组件大约是d1的两倍时,如在X值约为7的位置)。
set.seed(1)
d1 <- sample(1:10, 30, replace = TRUE)
d2 <- sample(4:8, 30, replace = TRUE)
d1.d <- density(d1, bw = 1)
d2.d <- density(d2, bw = 1)
plot(d1.d,
main = "KDE of d1 (black) and d2 (blue)",
ylim = c(0,0.25))
lines(d2.d, col = "blue")
如何完成这个任务?
plot(d1.d$x, d1.d$y/d2.d$y, type = "l")
会产生你想要的线条,但我无法弄清楚如何将density
对象与同一图形一起绘制。 - undefined