gpt4 book ai didi

c++ - 人口数据的生成方式

转载 作者:塔克拉玛干 更新时间:2023-11-03 04:30:21 26 4
gpt4 key购买 nike

我必须生成 100 行城市人口,然后还为每个城市生成相同数量的失业行。数据应该接近真实的东西。我的问题是如何正确地做到这一点?我有一个想法,我想与您分享以征求您的意见。例如:

我将从中央统计局获取特定城市的 200 行真实人口数据,然后从这 200 行中随机选择 100 行。之后,我还会随机生成有关失业的数据,但基于较早的人口数据,考虑到失业人数可能不会超过人口人数。

此时我随机生成了 1000 到 30 000(人口)范围内的数据,如下所示:

int random_population_result = (rand() % 29000) + 1000;

失业人数在 100 到 2000 之间

int random_unemployed_result = (rand() % 1900) + 100;

但是我的教授对我说,以这种方式生成这种数据并不是一个好主意,所以他让我考虑一下。我在上面向您介绍了我的新想法,我很好奇您的意见。

整个循环:

//number of rows in column
const int colSize = 100;
int col_X[colSize]; //stores X values [population]
int col_Y[colSize]; //stores Y values [unemployed people]
//display table header
cout << "id " << "\t" << "X" << "\t" << "Y" << endl;
for (int i = 0; i < colSize; i++){
//return value between 1000 and 30 000 of population
int random_population_result = (rand() % 30000) + 1000;
//return value between 100 and 2000 of unemployed people
int random_unemployed_result = (rand() % 1900) + 100;
//put values to arrays
col_X[i] = random_population_result;
col_Y[i] = random_unemployed_result;
}

问候。

最佳答案

看看极端情况。最小的人口是 1000,最大的失业结果是 2000。显然,这是一个问题,因为在 1000 的人口中不可能有 2000 的失业人员。

在另一个极端,一个拥有 30000 人口的城市可能有 100 人失业,失业率为 0.3%。这比你在现实生活中会发现的要低得多。

所以失业结果应该与城市人口成正比。在现实生活中,失业率通常以占人口的百分比表示,不同城市略有不同。例如,平均失业率可能为 10%,A 市的失业率可能为 9%,B 市的失业率可能为 12%。

所以选择你的城市人口,然后选择一个失业率,然后将两个结果相乘得到失业人数。

关于c++ - 人口数据的生成方式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40642279/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com