我在R中的以下元素的列表:如何提取从列表中的元素混合元素
[[812]]
[1] "" "668" "12345_s_at" "667" "4.899777748"
[6] "49.53333333" "10.10930207" "1.598228663" "5.087437057"
[[813]]
[1] "" "376" "6789_at" "375" "4.899655078"
[6] "136.3333333" "27.82508792" "2.20223398" "5.087437057"
[[814]]
[1] "" "19265" "12351_s_at" "19264" "4.897730912"
[6] "889.3666667" "181.5874908" "1.846451572" "5.087437057"
我知道我可以的情况下,用类似list_elem[[814]][3]
访问他们,我想提取第三我需要提取所有列表的第三个元素,例如12345_s_at
,并且我想将它们放入向量或列表中,以便稍后将它们的元素与另一个列表进行比较。下面是我的代码:
elem<-(c(listdata))
lp<-length(elem)
for (i in 1:lp)
{
newlist<-c(listdata[[i]][3]) ###maybe to put in a vector
print(newlist)
}
当我打印结果我得到的第三个元素,但这样的:
[1] "1417365_a_at"
[1] "1416336_s_at"
[1] "1416044_at"
[1] "1451201_s_at"
,所以我不能用索引遍历他们像newlist[3]
,因为它返回NA
。我的错误在哪里?
使用'sapply'来避免'unlist'部分。另外,我认为'['就足够了。 +1 – GSee