使用行号列表作为填充字段的条件

Using list of row numbers as criteria to populate field

我有一个行号列表,表示数据集中包含离群值的行。我想在原始数据集中添加一个 "outlier" 列来标记包含离群值的行,但我不知道如何在 r.

中使用行号作为条件

示例:

我有一个这样的数据框:

id <-c("a","b","c","d")
values <-c(10,11,22,33)
df<-data.frame(names,values)

     id   values
1     a     10
2     b     11
3     c     22
4     d     33

和这样一个包含行号的列表(更准确地说 "row names"):

outliers <-c(2,4)

我想找到一种使用行号列表作为条件的方法,例如:

df$outlier_test<-ifelse( if row number is on my list, "outlier","")

制作这样的东西:

     id   values    outlier_test
1     a     10             
2     b     11      outlier
3     c     22             
4     d     33      outlier

我花了很长时间试图解决这个问题,并在我发布问题后立即获得灵感。对于带着这个问题来到这里的其他人:

第一个:

df$rownumber<- row.names(df)

然后:

df$outlier_test<- ifelse(df$rownumber %in% outliers,"outlier","")