问题标签 [kernel-density]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
r - R:kernel2d 之后生成的图像的移位
在我的图像上应用 kernel2d R 代码后,我遇到了一个奇怪的问题。生成的密度图移动了几个像素(向上和右侧)。我加载我的图像,对其设置阈值(直到现在图像完全重叠)。然后我生成一个 > 0 的像素列表。
它用作 kernel2d 函数的输入。w 和 height 设置为输入图像的尺寸。对于 h 我选择了不同的值,但它们似乎与班次无关。
然后将图像存储为 png
有什么提示吗?谢谢!都林
完整代码示例:
datetime - R中的旋转x标签
我在 R 中有如下数据:
其中类(event_ts)是“POSIXct”。
我想在不同时间找到每个位置的袋子密度。所以,我使用了如下的函数密度:
最后一条评论不起作用,我不知道如何识别函数“text”处的“x”值。
提前感谢您的任何评论和指导。
最好的,志摩。
r - ggplot2 中的 geom_density 和 base R 中的密度之间的差异
我在 R 中有如下数据:
其中类(event_ts)是POSIXct
。
我想在不同时间找到每个位置的袋子密度。
我使用了该命令geom_density(ggplot2)
,并且可以很好地绘制它。density(base)
我想知道和这个命令之间是否有任何区别。我的意思是他们正在使用的方法或他们正在使用的默认带宽等方面的任何差异。
我需要将密度添加到我的数据框中。如果我使用过该函数density(base)
,我知道如何使用该函数approxfun
将这些值添加到我的数据框中,但我想知道当我使用geom_density(ggplot2)
.
python - Python 的简单固定带宽一维高斯 KDE 实现
我需要一个具有固定带宽和高斯核的简单核密度估计。
唉,scipy.stats.gaussian_kde
我只看到了一个自动带宽选择。set_bandwidth
据我所知,该方法仅将自动选择的值与一些校正比率相乘。我只需要设置我想要设置的带宽。
我不想在 KDE 中使用我手写的 Python 代码:它运行起来有点太慢了。
你不知道有什么替代品scipy.stats.gaussian_kde
吗?
python - 线程错误:无法启动新线程
这是MWE
我正在使用的更大的代码。它对位于某个阈值以下的所有值在 KDE(核密度估计)上执行蒙特卡洛积分(在这个问题上建议了积分方法: Integrate 2D kernel density estimation),对列表中的多个点迭代并返回由这些结果组成的列表。
multiprocessing
在这个问题上建议了代码中的加速内核估计采样以加速代码(它可以达到〜3.4x)。
代码可以正常工作,直到我尝试将超过 ~62-63 个元素的列表传递给 KDE 函数(即:我在该行中设置了一个超过 63 的值for i in range(100)
)如果我这样做,我会收到以下错误:
通常(10 次中有 9 次)围绕活动线程374
。我在这里的编码方面超出了我的水平python
,我不知道如何解决这个问题。任何帮助都感激不尽。
添加
我尝试添加一个while
循环以防止代码使用太多线程。我所做的是用print threading.active_count()
这段代码替换该行:
代码在到达302
活动线程时停止(即:卡在循环内)。我等了 10 多分钟,代码从未退出循环,活动线程的数量从未从302
. 一段时间后活动线程的数量不应该减少吗?
r - 在自定义密度下模拟值
我有一个与密度和模拟值有关的理论和编码问题。
我正在通过 density(x) 命令构建自定义密度。但是我希望从这个密度中生成 1000-10000 个模拟值。总体目标是采用密度(x$y)形式构建的两个密度并运行模拟,并说这个密度 A 超过密度 B x% 的时间。我只是取每个模拟值,看看哪个更高,然后编写代码来计算 A 比 B 高多少倍。
有没有办法做到这一点?或者有没有办法用这些密度完成类似的事情?谢谢!
python - 在 python 中实现 2D、基于 FFT 的核密度估计器,并将其与 SciPy 实现进行比较
我需要代码来执行 2D 内核密度估计 (KDE),而且我发现 SciPy 实现太慢了。所以,我写了一个基于 FFT 的实现,但有几件事让我感到困惑。(FFT 实现还强制执行周期性边界条件,这正是我想要的。)
该实现基于从样本创建一个简单的直方图,然后将其与高斯卷积。这是执行此操作并将其与 SciPy 结果进行比较的代码。
上面有两组样本。1000个随机点用于基准测试并被注释掉;三点用于调试。
后一种情况的结果图在这篇文章的末尾。
以下是我的问题:
- 我可以避免直方图的 .T 和 KDE1 的 fftshift 吗?我不确定为什么需要它们,但是没有它们,高斯人会出现在错误的地方。
- 如何为 SciPy 定义标量带宽?高斯在两种实现中具有很大不同的宽度。
- 同样,即使我给 gaussian_kde 一个标量带宽,为什么 SciPy 实现中的高斯函数不是径向对称的?
- 我如何为 FFT 代码实现 SciPy 中可用的其他带宽方法?
(请注意,在 1000 个随机点的情况下,FFT 代码比 SciPy 代码快约 390 倍。)
python - 模拟相关的多元数据
我正在尝试从历史飓风数据中生成综合认识。在我的问题中,飓风由一组描述符参数化(即风暴大小、风暴强度、风暴速度和风暴方向——所有这些都参考了飓风穿过某些海岸线时的值)。这些实现将用于对飓风产生的洪水进行概率预测。假设是历史飓风数据来自一些潜在的多元分布。这个想法是从这个潜在的分布中提取额外的样本(保留矩、相关性、物理界限,如正风暴大小等)。
我已经实施了一种最近邻高斯色散方法,该方法是从 Taylor 和 Thompson 开发的技术修改而来的 - 发表在 1986 年的计算统计和数据分析中。我想看看是否有更好的方法来做到这一点。
数据样本(1940-2005 年墨西哥湾飓风):
邻域大小 = 5 和距离度量 = 欧几里得的示例。
matlab - ksdensity 如何计算每个数据点 xi?
当我[f,xi] = ksdensity(x)
在 Matlab 中使用时,我得到概率密度估计值f和xi评估点,ksdensity 计算f的位置。
我的问题是:如何计算/确定每个xi点?有公式吗?
文档中心说:默认是 100 个等距点,覆盖 x 中的数据范围。因此,它们涵盖了范围,但这并不能解释如何计算。
非常感谢!
胡安