Я пытаюсь выполнить простую задачу в R, создав столбец во фрейме данных, который будет содержать данные предыдущего столбца, которые больше значения.Приведенный ниже код дает мне некоторые (неправильные) странные результаты.
set.seed(20)
x=round(runif(10),2)
y=round(runif(10),2)
df=data.frame(x=x,y=y)
df<-transform(df, w=ifelse(df$y>0.4, df$y[df$y>0.4], 0))
df
И результат равен
x y w
1 0.88 0.72 0.72
2 0.77 0.76 0.76
3 0.28 0.00 0.00
4 0.53 0.74 0.45
5 0.96 0.19 0.00
6 0.98 0.45 0.72
7 0.09 0.32 0.00
8 0.07 0.11 0.00
9 0.33 0.29 0.00
10 0.37 0.82 0.82
Любые предложения о том, почему столбец w
не соответствует значениямy>0.4
а они показывают смешанные результаты?