Я пытаюсь создать фрейм данных с именем «студенты» с четырьмя переменными: пол, год (первокурсник, второкурсник, младший, старший), возраст и средний балл. Идея состоит в том, чтобы иметь фрейм данных, иллюстрирующий четыре уровня измерения: номинальный, порядковый, интервальный и относительный.
На данный момент это выглядит примерно так:
ID Gender Year Age GPA
1 Male Sophomore 0 3.9
2 Male Junior 0 3.3
3 Female Junior 0 3.6
4 Male Freshman 0 3.1
5 Female Senior 0 2.9
У меня проблема с возрастом. Я хотел бы, чтобы возраст был назначен на основе вероятности. Например, если студент является первокурсником, я бы хотел, чтобы возраст был назначен примерно в следующих строках:
Age Probability
14 .47
15 .48
16 .05
У меня есть функция для этого:
1: Age <- function(df) {
2: for (i in 1:nrow(df) {
3: if (df[i, 2] == "Freshman") {
4: df[i, 3] = 15
5: } else if {
6: continue through the years
7: }
8: }
9: }
Я думаю, что я хочу изменить правую часть задания в строке 4 на что-то, что будет определять возраст вероятностно. Вот и не могу понять как сделать.
В связи с этим, если есть лучший способ сделать это, чем то, что я рассматриваю, я был бы признателен, если бы это услышал.
И, наконец, я погуглил в Интернете, запросил форумы R на Reddit и Talk Stats и искал теги R на этом сайте, но все безрезультатно. Я не могу поверить, что я первый человек, который когда-либо хотел сделать что-то подобное, поэтому мне пришло в голову, что, возможно, я неправильно формулирую запрос. Если это так, любые рекомендации также будут оценены.