I would like to test whether a number is written in a field of the data frame depending on the name of the variable.
Assume following data
dat <- data.frame(a_1=c(1,2,1,0,2), b_2=c(1,2,1,0,2), c_0=c(1,2,1,0,2))
The results should be new columns that test whether the number that is included in the variable name (i.e., 1, 2, 0 from a_1, b_2, c_0) is included in the field of the data frame, if possible in a new column and indicated by a 1 (0 otherwise).
So, the result should look like that.
  a_1 b_2 c_0 a_1test b_2test c_0test
1   1   1   1 1       0       0
2   2   2   2 0       1       0
3   1   1   1 1       0       0
4   0   0   0 0       0       1
5   2   2   2 0       1       0
Until know I did this individually:
 dat$a_1test <- ifelse(dat$a_1==parse_number("a_1"), 1, 0)
 dat$b_2test <- ifelse(dat$b_2==parse_number("b_2"), 1, 0)
 dat$c_0test <- ifelse(dat$c_0==parse_number("c_0"), 1, 0)
Is there a simpler solution? (this is an easy example, I have more than 100 lines to do that operation for.
                        
Using
purrr::reduceyou can loop over the names of your df to achieve the desired result: