在R语言中,which函数用于查找向量或矩阵中满足指定条件的元素的索引。
语法:which(logical_vector, arr.ind = FALSE, use.names = TRUE)
参数说明:
logical_vector:逻辑向量,表示要查找的向量或矩阵。arr.ind:一个逻辑值,用于指示返回的索引是否为矩阵的索引。默认值为FALSE,表示返回向量索引。use.names:一个逻辑值,用于指示返回的索引是否使用原始对象的名称。默认值为TRUE,表示使用名称。示例:
# 查找向量中大于5的元素的索引vector <- c(1, 3, 7, 2, 9, 4)which(vector > 5)# 输出结果为:[1] 3 5# 查找矩阵中小于0的元素的索引matrix <- matrix(c(1, -2, 3, -4), nrow=2)which(matrix < 0, arr.ind = TRUE)# 输出结果为:# row col# [1,] 1 2# [2,] 2 2# 查找向量中等于10的元素的索引,并使用原始对象的名称names(vector) <- c("A", "B", "C", "D", "E", "F")which(vector == 10, use.names = TRUE)# 输出结果为:E总结:which函数用于查找向量或矩阵中满足指定条件的元素的索引。可以通过设置参数arr.ind和use.names来控制返回的索引形式。

