【问题标题】:R- probability density from a discrete named vectorR- 来自离散命名向量的概率密度
【发布时间】:2013-07-30 04:24:51
【问题描述】:

我有一个命名向量 modVect,其中包含每个名称的概率值(-.01、-.02.... 是离散误差值)。

head(modVect)
-.01         -.02         -.03         -.04         -.05         -.06 
0.0006927649 0.0033267561 0.0080302663 0.0065196742 0.0018305703 0.0003929703 

我想根据这些概率模拟错误值。如何使用概率密度函数或核密度估计来做到这一点?到目前为止,我已经这样做了

xseq<-as.numeric(names(modVect))
plot(xseq, modVect)
y<-kde(modVect)

但这是不正确的,因为它不会将 modVect 值解释为概率。我希望有一个函数可以根据概率创建一个pdf。

谢谢

【问题讨论】:

  • 你需要明确你想要什么。密度不是概率。

标签: r probability


【解决方案1】:

要使用概率采样,请使用 sampleprobs

N <- 1000
sample(xseq, N, replace=TRUE, probs=modVect)

【讨论】:

  • 这是我正在寻找的那种函数,但我的 modVect 向量包含概率密度,而不是概率。它还能正常工作吗?
  • 让我猜猜:你是从对 kdedensity 的呼叫中得到的 modVect。如果是这样,它将是一个等距点的网格,一切都很好; sample 会将概率归一化为 1。
  • 另外,你知道有什么方法可以让这个样本产生偏差吗?我想包括来自自相关的权重,它会改变这个 modVect 向量中的概率。我尝试使用 ecdf 但它不考虑概率。例如,如果最后一个样本是“-.07”,我想对采样进行偏差,或者只是将下一个更新的 modVect 更改为负值,以反映最后一个样本的滞后相关性的影响。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-06-07
  • 1970-01-01
  • 1970-01-01
  • 2016-06-12
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多