R:将[KDE]密度图转换成cdf?

时间:2016-04-30 02:18:04

标签: r cdf ecdf

数据: 34,46,47,48,52,53,55,56,56,56,57,58,59,59,68

密度图

enter image description here

ECDF

enter image description here

我想要做的是获取导出的密度图并将其转换为累积分布频率以从中导出%。反之亦然。 我希望专门使用核密度估计来推导平滑累积分布函数。我不希望依靠原始数据点来做ECDF,而是使用KDE来做CDF。

编辑:

我看到有一个KernelSmoothing.CDF,这可能是解决方案吗?如果是,我到目前为止还不知道如何实现它。

Mathworks有一个我想做的事情的例子,在" Compute下从ECDF转换到KECDF并绘制在指定值集合下评估的估计cdf。"

http://www.mathworks.com/help/stats/examples/nonparametric-estimates-of-cumulative-distribution-functions-and-their-inverses.html?requestedDomain=www.mathworks.com

enter image description here

虽然我认为实施相当草率。考虑多项式回归线会更合适。

1 个答案:

答案 0 :(得分:0)

library("DiagTest3Grp", lib.loc='~/R/win-library/3.2")

data <- c(34,46,47,48,52,53,55,56,56,56,57,58,59,59,68)
bw <- BW.ref(data)
x0 <- seq(0, 100, .1) 
KS.cdfvec <- Vectorize(KernelSmoothing.cdf, vectorize.args = "c0")
x0.cdf <- KS.cdfvec(xx = data, c0 = x0, bw = bw)
plot(x0, x0.cdf, type = "l")

我仍然需要弄清楚如何派出给定的x,但这是一个重要的帮助