Я немного застрял в чем-то, что я чувствую глупо, потому что застрял на нем, поэтому любой совет от свежей пары глаз будет полезен.
У меня есть массив, содержащий 12 возрастных групп, большинство возрастных групп содержат 4 возраста.
a1 = ([15,16,17,18,19])
a2=([20,21,22,23,24])
a3=([25,26,27,28,29])
a4=([30,31,32,33,34])
a5=([35,36,37,38,39])
a6=([40,41,42,43,44])
a7=([45,46,47,48,49])
a8=([50,51,52,53,54])
a9=([55,56,57,58,59])
a10=([60,61,62,63,64])
a11=([65,66,67,68,69])
a12=([70,71,72,73,74,75,76,77,78,79,80])
age=([a1,a2,a3,a4,a5,a6,a7,a8,a9,a10,a11,a12])
Вероятность того, что будет выбрана любая из возрастных групп:
age_prob=[0.1, 0.125, .145,.13,.115,.1,.085,.075,.02,.06,.035,.01]
После выбора возрастной группы я хочу выделить один возраст из этой группы с равнымвероятность.Этот возраст затем добавляется в столбец, пока он не будет содержать 100 возрастов.Это создаст для меня возраст:
age_group=np.random.choice(age, p=age_prob)
Age=np.random.choice(age_group)
Age
Но если я попытаюсь создать 100 возрастов, я получу массив из 100 возрастных групп `
age_group=np.random.choice(age, p=age_prob)
Age=np.random.choice(age_group,100)
Age
Я попробовал этот подход некоторое время:
age_indices = np.random.choice(len(age), 100, replace=True, p=age_prob)
Age=[age[i] for i in age_indices]
Age1=np.random.choice(Age,100)
Но получил это
array([list([20, 21, 22, 23, 24]), list([45, 46, 47, 48, 49]),
list([40, 41, 42, 43, 44]), list([35, 36, 37, 38, 39]),
list([15, 16, 17, 18, 19]), list([25, 26, 27, 28, 29]),
list([40, 41, 42, 43, 44]), list([60, 61, 62, 63, 64]),
list([45, 46, 47, 48, 49]), list([30, 31, 32, 33, 34]),.....
Надеюсь, я проясню, и любые советы приветствуются, спасибо.
`