我是很新的R和我可能会丢失一些信息,但我不能换我的头解决此问题:遍历列表,并追加R中
neighbors<-function(topo,usr){
n = NULL
for (i in 1:length(topo[,1])){
if (topo[i,1] == usr){
n <- append(n,topo[i,2])
}
}
return(n)
}
凡topo
具有以下结构:
2l59mm6jc8pae32vilsr99ljp0 40iml67hpjsr8o1oo7f4oin706
3359mm6jc8pae32vilsr99ljp0 411iml67hpjsr8o1oo7f4oin706
...
我想这样做的是通过第一列驱动回路,看到从第一列与usr
的比赛和第二列的内容添加到n
,我回来。
会发生什么,我在输出中得到一些数字:19
和16
。如果我尝试调试它,我收到以下答案:
[1] vi4govpcqjnf6imquadf9ae4f0
20 Levels: 2l59mm6jc8pae32vilsr99ljp0 40iml67hpjsr8o1oo7f4oin706 ... vvqp3im2g3r90ibv56817asfq7
[1] 19
[1] nb9b1vh6ocaqsmgp8dv1s22f61
20 Levels: 2l59mm6jc8pae32vilsr99ljp0 40iml67hpjsr8o1oo7f4oin706 ... vvqp3im2g3r90ibv56817asfq7
[1] 19 16
[1] 19 16
我在做什么错?
是的,这是我正在寻找,但其他答案更优雅。 – Pio
同意其他更好,不知道你的设置是多么复杂,所以试图在你的循环框架内工作:) – sckott
但其他答案省略'stringsAsFactors = FALSE',那样它不起作用 – Pio