data=data.frame("team"=c(1,1,1,2,2,2,3,3,3,4,4,4,5,5,5),
"score"=c(4,8,10,3,10,5,4,2,7,7,5,6,5,9,1),
"trial"=c(1,2,3,1,2,3,1,2,3,1,2,3,1,2,3),
"sc3"=c(0,0,0,1,0,0,0,1,0,0,0,0,0,0,1),
"sc7"=c(0,0,0,1,0,1,1,1,1,1,1,1,1,0,1),
"sc9"=c(1,1,0,1,0,1,1,1,1,1,1,1,1,1,1),
"sc3trial"=c(-99,-99,-99,1,1,1,2,2,2,-99,-99,-99,3,3,3),
"sc7trial"=c(-99,-99,-99,1,1,1,1,1,1,1,1,1,1,1,1),
"sc9trial"=c(1,1,1,1,1,1,1,1,1,1,1,1,1,1,1))
У меня есть данные с колонками «команда» и «оценка» и «триал». Я хочу создать переменные "sc3", "sc7", "sc9", "sc3trial", "sc7trial", "sc9trial", которые следуют этим правилам ::
Правила просты для "s c# ». Обратите внимание, что это для каждой группы:
- Для «sc3»: если оценка <= 3, sc3 = 1. В противном случае sc3 = 0. </li>
- Для «sc7»: если оценка <= 7, sc7 = 1. В противном случае sc7 = 0. </li>
- Для «sc9»: если оценка <= 9, sc9 = 1. В противном случае sc9 = 0. </li>
Правила довольно просты для "sc # trial". Обратите внимание, что они для каждой группы:
- Для "sc3trial": если есть "sc3" == 1, sc3trial записывает испытание, когда оно впервые произошло. Если «sc3» не равен «1», то «sc3trial» равняется «-99». Эти логики c применяются одинаково для «sc7trial» и «sc9trial»