Hobbies
HobbyGenerator
A class to manage hobbies
The class manages how hobbies are assigned including loading data, precomputing probabilities, and assigning hobbies based on gender and age.
Source code in june/demography/hobbies.py
7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 |
|
__init__(yaml_file=None)
Initialise the Hobbies class by loading data from a YAML file, precomputing probabilities, and discarding intermediate data.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
yaml_file
|
str
|
Path to the YAML file containing hobby data. If not provided, uses the default. |
None
|
Source code in june/demography/hobbies.py
16 17 18 19 20 21 22 23 24 25 26 27 28 29 |
|
assign_hobbies(sex, age)
Assign hobbies to a person based on their gender and age by directly using precomputed probabilities.
Parameters:
Name | Type | Description | Default |
---|---|---|---|
sex
|
str
|
"m" or "f". |
required |
age
|
int
|
Age of the person. |
required |
Returns:
Type | Description |
---|---|
list
|
A list of 1-2 unique hobbies assigned to the person. |
Source code in june/demography/hobbies.py
74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 |
|