【问题标题】:R - Sampling Two Correlated VariablesR - 对两个相关变量进行抽样
【发布时间】:2019-03-10 10:32:45
【问题描述】:

我有两个多项变量(例如年龄组和颜色)。

ageGroup <- c(35,40,45,50)
color    <- c("Red", "Blue", "Yellow")

我希望能够以相等的概率为 100 次观察绘制这两个变量。

n = 100
age   <- sample(ageGroup, 100, replace = T)
color <- sample(color,    100, replace = T)

如果我们假设某些观察到的频率表显示 35 岁和 40 岁也不能是“红色”,我如何采样这两个年龄组绘制“蓝色”和“黄色”(而不是“红色')?

我应该将抽样分成年龄组还是有更复杂的统计方法?

谢谢!

【问题讨论】:

    标签: r distribution correlation sampling multinomial


    【解决方案1】:

    这是一种方法。我不确定它是否符合您的“等概率”要求。我设置的方式是每个“允许”的 color-ageGroup 组合都将以相等的概率绘制。

    # sample data
    ageGroup <- c(35,40,45,50)
    color    <- c("Red", "Blue", "Yellow")
    
    # get all combinations of ageGroup and color
    df <- expand.grid(ageGroup, color)
    names(df) <- c("ageGroup", "color")
    
    # remove red-35 and red-40
    subdf <- df[!(df$color=="Red" & df$ageGroup %in% c(35, 40)), ]
    
    # sample from the remaining combinations, each with equal probability
    N <- nrow(subdf)
    result <- subdf[sample(1:N, 100, T), ]
    

    【讨论】:

      猜你喜欢
      • 2022-08-23
      • 1970-01-01
      • 1970-01-01
      • 2017-08-20
      • 2022-01-26
      • 1970-01-01
      • 1970-01-01
      • 2016-04-22
      • 2020-12-14
      相关资源
      最近更新 更多