【发布时间】:2018-02-27 05:56:58
【问题描述】:
我想知道是否可以使用循环来做这样的事情:
data[data!=1]
data[data!=1&data!=2]
data[data!=1&data!=2&data!=3]
【问题讨论】:
标签: r function loops append subset
我想知道是否可以使用循环来做这样的事情:
data[data!=1]
data[data!=1&data!=2]
data[data!=1&data!=2&data!=3]
【问题讨论】:
标签: r function loops append subset
下午好 :)
你可以试试:
data <- c(1,2,3,2,2,1,4,5,2,1)
indices <- 1:3 # or use function seq for more general sequences
for(i in indices){
print(data[!data %in% min(indices):i])
}
如果你想重新分配给新的向量,你可以试试 lapply:
obj_list <- lapply(indices, FUN = function(i){
data[!data %in% min(indices):i]
})
obj_list
这是你要找的吗?
【讨论】:
subset 函数。如果你有像string_vec = c("a", "b", "c") 这样的字符串。然后你可以做data[!data %in% string_vec[min(indices):i] ]。也就是说,定义一个从 1 到字符串长度的数字向量。然后做同样的事情,但做string_vec[num_vec]。有意义吗?