我在 MATLAB 中使用这种形式的 ksdensity 函数。
[f,xi] = ksdensity(x)
文档说“f 是在 xi 中的点处评估的密度值的向量......密度是在 100 个等距点处评估的,这些点覆盖了 x 中的数据范围。”
现在,我的 xi 值覆盖的范围比 x 中的数据大得多。为什么是这样?
对于我的数据,
>> min(x)
ans =
-2.2588
>> min(xi)
ans =
-6.8010
>> max(x)
ans =
6.5326
>> max(xi)
ans =
11.0748
我知道我可以自己指定一个 xi 范围,但为什么默认情况下它在 x 的 min 和 max 之间的间距不相等?
当直方图中的 bin 仅覆盖 x 的范围,而 ksdensity 给出的测试点超出此范围时,很难比较直方图估计量和核估计量。