我将使用密度{stats}来构建一个包含多个变量的向量的高斯核密度函数。如果我使用以下示例数据集:
x <- rlogis(1475, location=0, scale=1) # x is a vector of values - taken from a rlogis just for the purpose of explanation
d<- density(x=x, kernel="gaussian")
有没有一种方法可以在每个 n=1475
点处获得此密度函数 d
的一阶导数?
dnorm(x) * x
。因此,使用带宽/标准偏差s
,应该是dnorm(x, 0, sd = s) * x
还是dnorm(x, 0, sd = s) * x/s
? - Josh O'Briens
的因素被抵消了。这是正确的公式:s <- d$bw; slope <- sapply(x, function(X) {mean(dnorm((x-X), 0, s) * (x-X))})
- Josh O'Brien