【问题标题】:SAS Proc IML simulating using empirical distributionSAS Proc IML 模拟使用经验分布
【发布时间】:2021-09-02 21:14:40
【问题描述】:

我正在尝试使用经验分布来模拟数据。例如,假设有五个结果,其概率如下面的向量所示:

PROBABILITY_VECTOR = [0.1, 0.2, 0.3, 0.25, 0.15]

PROBABILITY_VECTOR 是根据经验数据计算得出的 - 因此对于该向量中的第一个类别,虽然平均概率为 0.1,但样本之间存在相当大的差异。同样,最后一个类别,虽然所有样本的平均值为 0.15,但存在相当大的差异。概率为 0.3 和 0.25 的中间类别相当紧凑。

我使用 PROC IML,带有这些语句:

CALL RANDSEED(12345);
CALL RANDGEN(SAMPLE, "TABLE", PROBABILITY_VECTOR);

当我这样做时,所有模拟结果的平均值与概率向量一致,正如您所期望的那样。但是,如果我希望我的模拟试验也显示我在数据的某些类别中观察到的广泛差异,我该怎么做?有什么想法吗?

【问题讨论】:

  • 使用sas-iml 标签,而不是可能不应该存在的iml 标签。 Rick Wicklin 有时会在该标签中回答问题 - 尽管在 community.sas.com 上可能更频繁。
  • 听起来你有 6 个组和一个二进制变量。该向量似乎是每组上二元变量的平均值。如果这是正确的,则从混合模型中采样。对于每个类别,您需要 pi[i]=prob 观察值在组中,即 N[i]/N。有关高斯示例,请参阅 blogs.sas.com/content/iml/2011/09/21/…,但我认为您的示例将模拟伯努利分布。
  • @Joe 感谢您的提示!
  • @Rick 感谢您的回复!将查看该帖子,并就如何模拟混合模型进行更多研究!
  • 实际上,我在这篇博文中添加了一些额外的想法:blogs.sas.com/content/iml/2021/09/09/… 我没有将其作为答案提交,因为我不清楚您问题中的某些细节。如果您认为我最近的博客文章回答了您的问题,我可以将其作为答案。

标签: sas simulation sas-iml


【解决方案1】:

听起来你有k组主题,组的大小是N_1,N_2,...,N_k。对于每个组,您已经测量了具有某些兴趣特征的主题的比例。比例为 p_1, p_2, ..., p_k。

要模拟这样的数据,首先从具有 N=N_1+N_2+...+N_k 个主题且成员概率为 N_1/N、N_2/N、...、N_k 的多项分布中随机抽取/N。这将为您提供一个新样本,其中 N 个主题分布在 k 个组中,并且每个组的主题数量与数据大致相同。这就解释了为什么有些组有“广泛的差异”,而另一些则“紧张”。

要模拟组中的哪些受试者具有特征,请使用二项式(p_i, N_i) 分布。这会将特征随机分配给第 i_th 组中的一些主题。

如果您一遍又一遍地重复此过程,您会发现较小的组比较大的组具有更多的变化。我写了一个详细的解释,包括一个 SAS/IML 程序和可视化组间变化的图形。见文章,"Simulate proportions for groups."

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-12-16
    相关资源
    最近更新 更多