Имея такой фрейм данных:
data.frame(previous = c(1,2,2,1,3,3), `next` = c(1,1,2,3,1,3),
col1_1 = c(1,0,0,0,0,0),
col1_2 = c(0,0,0,0,0,0),
col1_3 = c(0,0,0,1,0,0),
col2_1 = c(0,1,0,0,0,0),
col2_2 = c(0,0,1,0,0,0),
col2_3 = c(0,0,0,0,0,0),
col3_1 = c(0,0,0,0,1,0),
col3_2 = c(0,0,0,0,0,0),
col3_3 = c(0,0,0,0,0,1), id = c(1,2,3,4,5,6), salary = c(30,20,40,10,40,80))
Как можно проверить столбцы, пока они не начнутся с col, вставить значение столбца зарплаты, где 1 существует.
Здесь ожидаемый результат :
data.frame(previous = c(1,2,2,1,3,3), `next` = c(1,1,2,3,1,3),
col1_1 = c(30,0,0,0,0,0),
col1_2 = c(0,0,0,0,0,0),
col1_3 = c(0,0,0,10,0,0),
col2_1 = c(0,20,0,0,0,0),
col2_2 = c(0,0,40,0,0,0),
col2_3 = c(0,0,0,0,0,0),
col3_1 = c(0,0,0,0,40,0),
col3_2 = c(0,0,0,0,0,0),
col3_3 = c(0,0,0,0,0,80), id = c(1,2,3,4,5,6), salary = c(30,20,40,10,40,80))