我在R中列出了大约10,000个元素。说我想只选择元素,5,7和9.我不知道如果没有for循环,我会怎么做。从列表中选择多个元素
我想要做类似mylist[[c(5,7,9]]
但这不起作用。我也尝试了lapply
函数,但还没有能够得到那个工作。
我在R中列出了大约10,000个元素。说我想只选择元素,5,7和9.我不知道如果没有for循环,我会怎么做。从列表中选择多个元素
我想要做类似mylist[[c(5,7,9]]
但这不起作用。我也尝试了lapply
函数,但还没有能够得到那个工作。
mylist[c(5,7,9)]
应该这样做。
您希望将子列表作为结果列表的子列表返回;你不要使用[[]](或者更确切地说,函数是[[
) - 因为Dason在评论中提到,[[
抓住了元素。
只需添加一些细节 - “[”将返回一个子列表,因此您可以使用多个输入。 “[[”实际上会抓取元素本身,所以它只能接受一个输入,因为它没有返回一个列表(除非元素本身是一个列表)。 – Dason
这是矢量图吗?我有两个列表:'b'包含1000万个元素。 'filter_bins'是一个列表,其中每个元素都是一个索引。所以为了只从'b'得到具有相同索引的元素,我有 'lapply(filter_bins,function(x)b [x,])' 因此b [x,]只返回行的子集其中每个元素由filter_bins选择)。我希望这是有道理的。我的问题是,这是非常缓慢的 – masfenix
@masfenix你应该产生一个新的问题来描述细节。 –
从'?“找到的文档[[”':*''''''''''''''''''''''''''选择一个元素* – A5C1D2H2I1M1N2O1R2T1
除了@ mrdwab的评论,这是R的向量化世界,“单个元素”可能是一个向量! – seancarmody