I have a variable "dif2" in data2, and I'm going to add a new variable to the dataset named "L" with the condition that ( if -0.1 <= dif2 <= 0.1, L == "B", while if dif2 > 0.1, then L == "S", and if dif2 <-0.1 then L == "E")
I tried different ways. First I used for loop :
for (i in 1:nrow(data2)) {
if(!is.na(data2$dif2[i] < -0.1)){
data2[i,'L'] <- "E"
}
else if (!is.na(data2$dif2[i] > 0.1)) {
data2[i, 'L'] <- "S"
}
else if (!is.na(data2$dif2[i] <= 0.1 && data2$dif2[i] >= -0.1)) {data2[i, 'L'] <- "B"
}
}
This didn't work well.
And Then I used recoding directly like this:
data2$dif2[data2$dif2 < -0.1] <- "E"
data2$dif2[data2$dif2 > 0.1] <- "S"
data2$dif2[data2$dif2 >= -0.1 && data2$dif2 <= 0.1] <- "B"
This didn't work well either (some number between -0.1 and 0 was not correctly coded)