2013-05-27 49 views
10

我有這樣的名單:刪除列表的元素明確

myList <- list(rnorm(10), rnorm(10), rnorm(10)) 

names(myList) <- c("one", "two", "three") 

$one 
[1] -0.07587506 -0.09997924 -0.41846732 1.41542651 -0.58678093 0.56909465 -1.11074541 
[8] 1.94663786 0.46381799 -0.11458166 

$two 
[1] 0.98883679 -0.06305794 -0.78961229 1.21091484 0.19636700 0.27458057 0.12374154 
[8] 0.83782946 -0.79627870 0.97675486 

$three 
[1] 0.67033455 -0.80243815 0.08716750 -2.90455146 -0.02433571 -0.93062428 -0.16886116 
[8] -0.60927976 -1.77758270 -1.05033148 

我想從列表中刪除twothree,我想引用這些元素用「二」和「三」。我試過了:

myList <- myList[[-c("two", "three")]] 

......這給出了一個錯誤。

如何從列表中刪除twothree並使用「two」和「three」來引用它們?

回答

23
myList[which(names(myList) %in% c("two","three"))] <- NULL 
+2

這樣比較容易理解,如果您試圖一次刪除它們: 'myList [2] < - NULL; myList $ 3 < - NULL'。 – MrGumble

+17

或只是'myList [c(「two」,「three」)] < - NULL'。 – flodel