Рост населения: добавление строк в данные на основе группировок по возрастным группам (добавление новых «людей») - PullRequest
1 голос
/ 23 мая 2019

Впервые на python **

В настоящее время у меня базовая популяция, которую я старею и перегруппируюсь по возрастным категориям.То, что я хотел бы сделать, это добавить «новых» людей и удалить людей из этой базовой популяции в дополнение к их старению.

Например: у меня есть список возрастов: 22, 25, 27, 30, 35, 38 ... (и т. Д.), Которые отсортированы по бинам и подсчитаны:

<20 0
20 to 24 12
25 to 29 60
30 to 34 138
35 to 40 242

У меня также есть вектор «изменения», который по возрастной группе имеет сложения или вычитания, поэтому [0,12,-4,3,-2]

, поэтому количество новых категорий будет

<20 0
20 to 24 24
25 to 29 56
30 to 34 141
35 to 40 240

Что я хотел бы сделать, это картаэти изменения возвращаются к исходному набору данных, чтобы получить новый счет.Таким образом, на самом деле добавьте 12 человек в возрасте от 20 до 24 лет (случайным образом предпочтительно) и вычтите 4 строки из исходного набора данных случайным образом в возрасте от 30 до 34

План будет состоять в том, что это произойдет в цикле,и каждый год набор данных стареет, а затем делаются сложения или вычитания, а затем новый счет.

В настоящее время я могу пройти цикл старения населения и создать счетчик для каждого года, а также вытащить вектор изменения для каждого года, но я не уверен, как добавить людей в мое население, используя вектор изменениясуммы так, чтобы они были добавлены или вычтены в пределах определенного возрастного диапазона.

Это то, что я имею до сих пор ..

for i in range(years):
    year=year+1
    ages=ages+1
    bins=pd.cut(ages.AGE,[0,20,24,29,34,39,44,49,54,59,64,69,150],labels=['<20','20 to 24','25 to 29','30 to 34','35 to 39', '40 to 45','45 to 49','50 to 54','55 to 59','60 to 64','65 to 69','>=70'],include_lowest=True)
    count=ages.groupby(bins)['AGE'].agg('count')
    change=np.array(change_vecs[change_vecs.columns[i]])

будет представлять собой новое население за каждый год, построенное из исходного населения.Где люди представлены их возрастом.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...