【问题标题】:How do I create a population sample that follows specified demographics?如何创建遵循指定人口统计的人口样本?
【发布时间】:2016-03-11 07:19:44
【问题描述】:

我有以下课程:

class Person
{
  GenderEnum Gender;
  RaceEnum Race;
  double Salary;
  ...
}

我想创建 1000 个此类的实例,以便 1000 个人的集合遵循以下 5 个人口统计数据:

  1. 50% 男性; 50% 女性

  2. 55% 白色; 20% 黑色; 15% 西班牙裔; 5% 亚洲人; 2% 美洲原住民; 3% 其他;

  3. 10%

  4. 女性平均工资是男性平均工资的 77%

  5. 平均工资占白人平均工资的百分比: 白色 - 100%。 黑色 - 75%。 西班牙裔 - 83%。 亚洲 - 115%。 美洲原住民 - 94%。 其他 - 100%。

上面的类别正是我想要的,但给出的百分比只是示例。实际百分比将输入到我的申请中,并且将基于我的申请正在查看的地区。

我怎样才能做到这一点?

我的尝试:

我可以很容易地创建我的 Person 类的 1000 个实例,并分配 Gender 和 Race 以匹配我的人口统计数据。 (对于我的项目,我假设男女比例与种族无关)。我还可以根据指定的百分比随机创建一个工资列表。我遇到麻烦的地方是弄清楚如何将这些薪水分配给我的 Person 实例,以使跨性别的平均薪水和跨种族的平均薪水符合指定条件。

【问题讨论】:

  • 第3项是全体人口的收入分配,我理解正确吗?因此白人男性的收入分配会偏向于更高的价值,而其他人的收入分配会偏向于更低的价值?
  • 是的,第 3 项是整个人口的收入分配。因此,如果您只查看白人男性的收入分布,则括号本身将保持不变,但在较高收入的人群中,百分比表示会偏高,是的。例如,如果百分比仅来自白人男性人口,您可能会看到 100K-200K 中的 18%(对 15%)和 > 200K 中的 8%(对 5%)。

标签: algorithm statistics


【解决方案1】:

我认为您可以通过假设所有类别的收入分布与您给出的相同形状来解决这个问题,但通过一个使所有值变大或变小的因素进行缩放。即收入分布的条数相同,每个条的质量比例相同,但条向更小的值或向更大的值移动,并且所有条都移动相同的因子。

如果这是合理的,那么这有一个简单的解决方案。请注意,所有人的收入分配的平均值是sum(p[i]*c[i], i, 1, #bars),我将其称为M,其中p[i] = 条形i 的质量比例c[i] = 条形中心i。对于每个组j,您有平均值sum(s[j]*p[i]*c[i], i, 1, #bars) = s[j]*M,其中s[j] 是组j 的比例因子。此外,您知道总体均值等于各组均值的总和,按该类别中的人数比例加权,即M = sum(s[j]*M*q[j], j, 1, #groups) 其中q[j] 是该组中的人数比例。最后,您将获得相对于白人平均值的每组平均值的特定值,即您知道(s[j]*M)/(s[k]*M) = s[j]/s[k] = 某个分数,其中k 是白人组的索引。从这里你可以解出s[k](白色组的比例因子)和s[j]的这些方程。

我只为种族群体阐明了这一点。您可以对男性与女性重复该过程,从您为每个种族群体找到的分布开始,并找到一个额外的比例因子。我猜如果你以另一种方式来做,先性别然后种族,你会得到相同的结果,但尽管看起来很明显,除非我找到证据,否则我不确定。

【讨论】:

  • 你明白了!谢谢。我想我可以混合性别和种族来组成更多的群体(黑人男性、黑人女性、白人男性、白人女性等),然后进行一次而不是两次。种族和性别相结合的方程式很简单。 BF = 0.77*BM; (BF + BM)/2 = 黑人平均工资;再次感谢!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-10-31
  • 2015-08-05
  • 2022-10-31
  • 2011-03-16
  • 1970-01-01
  • 2023-03-05
相关资源
最近更新 更多