fn <- function(D, e) {
for(i in 1:nrow(D)) {
if(D[i,1] == e) {
print("y")
}
}
}
fn(events, "a")
問題:events
是一個2×n矩陣。如果不是"a"
,我想通過c("a","b","c")
在e
,那麼如何檢查if(D[i,1]==e)
的條件?如何檢查矩陣的第一列是否包含來自向量的值
fn <- function(D, e) {
for(i in 1:nrow(D)) {
if(D[i,1] == e) {
print("y")
}
}
}
fn(events, "a")
問題:events
是一個2×n矩陣。如果不是"a"
,我想通過c("a","b","c")
在e
,那麼如何檢查if(D[i,1]==e)
的條件?如何檢查矩陣的第一列是否包含來自向量的值
我想接近它是這樣的:
x <- matrix(sample(letters, 25), ncol = 5)
> x
[,1] [,2] [,3] [,4] [,5]
[1,] "k" "v" "n" "l" "f"
[2,] "w" "c" "y" "r" "i"
[3,] "u" "p" "o" "q" "j"
[4,] "g" "s" "d" "t" "x"
[5,] "a" "z" "b" "h" "m"
e <- c("r", "e", "d")
apply(x, 1, function(x, e) any(x %in% e), e = e)
[1] FALSE TRUE FALSE TRUE FALSE
歡迎SO。從可讀性的角度來看,幾個空格和一些縮進很長。請記住 –
..謝謝。 – anu