как кумулятивно добавлять значения в один вектор в R
У меня есть набор данных, который выглядит так
id name year job job2
1 Jane 1980 Worker 0
1 Jane 1981 Manager 1
1 Jane 1982 Manager 1
1 Jane 1983 Manager 1
1 Jane 1984 Manager 1
1 Jane 1985 Manager 1
1 Jane 1986 Boss 0
1 Jane 1987 Boss 0
2 Bob 1985 Worker 0
2 Bob 1986 Worker 0
2 Bob 1987 Manager 1
2 Bob 1988 Boss 0
2 Bob 1989 Boss 0
2 Bob 1990 Boss 0
2 Bob 1991 Boss 0
2 Bob 1992 Boss 0
Вот,job2
обозначает фиктивную переменную, указывающую, был ли человекManager
в течение этого года или нет. Я хочу сделать две вещи с этим набором данных: во-первых, я хочу сохранить строку только тогда, когда человек сталBoss
в первый раз. Во-вторых, я хотел бы видеть совокупные годы, когда человек работалManager
и сохранить эту информацию в переменнойcumu_job2
, Таким образом, я хотел бы иметь:
id name year job job2 cumu_job2
1 Jane 1980 Worker 0 0
1 Jane 1981 Manager 1 1
1 Jane 1982 Manager 1 2
1 Jane 1983 Manager 1 3
1 Jane 1984 Manager 1 4
1 Jane 1985 Manager 1 5
1 Jane 1986 Boss 0 0
2 Bob 1985 Worker 0 0
2 Bob 1986 Worker 0 0
2 Bob 1987 Manager 1 1
2 Bob 1988 Boss 0 0
Я изменил свои примеры и включил положение «Рабочий», потому что это больше отражает то, что я хочу сделать с исходным набором данных. Ответы в этой теме работают только тогда, когда в наборе данных есть только менеджеры и боссы, поэтому любые предложения по выполнению этой работы были бы хорошими. Я'буду очень признателен !!