一个真正的初学者问题,我在列表中使用以下代码行应用循环:
for(i in 1:length(zz)){ if (length(zz[[i]])>2) {print(zz[[i]])}}
我正在获取我想要的东西,因为我在控制台中将其可视化。但是我找不到将它存储到变量中的方法,所以我可以在以后使用它。
你能帮我解决这个问题吗?非常感谢你。
蒂娜。
答案 0 :(得分:4)
我建议你按照以下方式过滤你的清单:
out <- zz[sapply(zz, length) > 2]
其中sapply(zz, length)
为您提供列表项的长度。
答案 1 :(得分:1)
out <- vector("numeric", length(zz)) #type depends on what zz is
for(i in 1:length(zz))
if(length(zz[[i]] > 2)
out[i] = zz[[i]]
正如其他人所说,R中的惯例是与apply
家庭成员一起做。