【问题标题】:create a vector of dates that follow a probability distribution创建一个遵循概率分布的日期向量
【发布时间】:2016-11-28 02:53:47
【问题描述】:

我正在尝试创建一个用于训练目的的假数据集,并且想要一个函数来创建一个与特定概率分布匹配的日期向量......即 - 选择的某个范围内的日期应该多于另一个。

我知道要选择日期范围,我可以这样做:

seq(as.Date("1940-12-30"), as.Date("2005-01-04"), by="days")

要分配给人群,我可以这样做:

dchisq(x=1:500,df = 100)rlnorm(500,1,.6)

但我对如何从上述特定概率分布之一进行seq() 绘制空白。那么如何根据模式绘制日期呢?

【问题讨论】:

    标签: r date probability


    【解决方案1】:

    如果您可以描述每个日期所需的概率,您可以使用样本来做到这一点。这是一个使用以年中为中心的高斯分布从 2005 年开始采样的示例。

        Y05 = seq(as.Date("2005-01-01"), as.Date("2005-12-31"), by="days")
        Prob = dnorm((1:365)*4/365 - 2)
        sample(Y05, 10, replace=TRUE, prob=Prob)
    

    【讨论】:

    • 需要注意的一点:sample() 中的概率权重不必加到 1,但必须 > 0
    【解决方案2】:

    解决此问题的最简单方法可能是将问题视为一般抽样问题,而不是日期抽样问题。例如,如果您认为问题是选择某个固定日期和目标日期之间的偏移量,那么您已经将问题转换为加权整数采样问题,并且您已经知道如何解决该问题。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-06-06
      • 1970-01-01
      • 2018-05-25
      • 1970-01-01
      相关资源
      最近更新 更多