0
給出R中的值列表,通過給定的謂詞函數過濾列表中的值有什麼好方法?在R列表中應用謂詞
給出R中的值列表,通過給定的謂詞函數過濾列表中的值有什麼好方法?在R列表中應用謂詞
不清楚你在R中是否有適當的列表對象,或者其他類型的對象,如data.frame或vector。假設你有一個真正的列表對象,我們可以結合lapply
和subset
來做你想做的事。如果您沒有列表,則不需要lapply
。
set.seed(1)
#Fake data
dat <- list(a = data.frame(x = sample(1:10, 20, TRUE))
, b = data.frame(x = sample(1:10, 20, TRUE)))
#Apply the subset function over the list
lapply(dat, subset, x < 3)
$a
x
10 1
12 2
$b
x
4 2
7 1
14 2
18 2
#Example two
lapply(dat, subset, x %in% c(1,7,9))
$a
x
6 9
8 7
9 7
10 1
13 7
$b
x
3 7
7 1
9 9
15 9
16 7
請參閱'?Filter'幫助頁面。 – 2011-05-01 13:54:57