这样做的背景是,我主要是一名 Python 程序员,对 R 有一定的了解。我的任务是查看一个由 Perl 程序员编写的 R 脚本,他经常使用for
和while
循环,看看我是否可以使它更像 R 并让它运行得更快。
例如,我有以下列表:
> lnums <- list(1:5, 6:7, 8:12)
对于长度小于 5的元素lnums[[2]]
(远不止于此。我一直在玩弄实现它的方法并想出了for
NA
> sapply(lnums, FUN=function(x) length(x) < 5)
它得到了正确的元素,但我无法弄清楚如何将它合并到length(lnums[]) <- 5
语句的下标中。我知道这可能是一个非常新手的问题,但如果我能得到任何帮助,我将不胜感激。
此外,我想增加较短列表元素的长度的原因是我可以将列表放入数据框中。如果有一种方法可以做到这一点而不会弄乱长度,那就太好了,尽管我仍然不介意回答我的第一个问题以满足我的好奇心,如果没有别的。
谢谢大家。我一直在这里挖掘一些主题,你已经帮了我很多忙!