我面对有趣的事情,我无法理解。我在R中有一个代码:
i <-1
list_dset <- list()
while (i <= length(drs)) {
xx <- subset(dset, grepl(drs[i], flist))
xx <- as.data.frame(xx)
list_dset <-list(list_dset,xx)
i <- i+1
}
其中:
&#39; DRS&#39;是2个元素的向量;
&#39; DSET&#39;是24个要素的清单;
&#39;的flist&#39;在这里,我用作分裂的因素线&#39; dset&#39;到12个elmtns的两个部分;
因此,我期望一个列表中包含两个元素(data.frames)的列表。
结果被转换为'#d;',其中前12个elmnts加入一个DF,第二个12个elmnts加入另一个DF,两个DF加入了&#39; list_dset&#39;。
所以问题是: 为什么这段代码在WHILE控制流程中正常工作,但不适用于FOR?
FOR循环:
i <-1
list_dset <- data.frame()
for (i in length(drs)) {
xx <- subset(dset, grepl(drs[i], flist))
xx <- as.data.frame(xx)
list_dset <-list(list_dset,xx)
}