I have a data frame:
Prod_Des MF240 MF2604H MF2605 MF2605H MF2606H
1 A FALSE TRUE FALSE FALSE FALSE
2 B FALSE FALSE TRUE FALSE FALSE
3 C TRUE FALSE FALSE FALSE FALSE
4 D FALSE FALSE TRUE FALSE FALSE
5 E FALSE FALSE FALSE TRUE FALSE
6 F FALSE FALSE FALSE FALSE TRUE
7 G FALSE FALSE TRUE FALSE FALSE
8 H FALSE FALSE FALSE TRUE FALSE
I'm trying to replace the "true" character values with the respective column name (e.g. "MF2606H"). This is my desired output:
Prod_Des MF240 MF2604H MF2605 MF2605H MF2606H
1 A FALSE MF2604H FALSE FALSE FALSE
2 B FALSE FALSE MF2605 FALSE FALSE
3 C MF240 FALSE FALSE FALSE FALSE
4 D FALSE FALSE MF2605 FALSE FALSE
5 E FALSE FALSE FALSE MF2605H FALSE
6 F FALSE FALSE FALSE FALSE MF2606H
7 G FALSE FALSE MF2605 FALSE FALSE
8 H FALSE FALSE FALSE MF2605H FALSE
I am trying this code:
temp=which(df== "TRUE",arr.ind = T)
df[temp]t=colnames(df)[temp[,2]]
But this code is replacing the respective values with NA. Any other alternatives??