R - 避免使用嵌套列表的循环

N. *_*cA. 4 nested r

我知道如果你能正确理解语言,几乎所有的时间都可以避免循环,但是我很难找到这样做的聪明方法

for (i in 1:100){
  AllData[[i]]$Div = NULL
}
Run Code Online (Sandbox Code Playgroud)

其中AllData是100个不同大小的列表的列表.有人能告诉我吗?

flo*_*del 5

像这样:

AllData <- lapply(AllData, `[[<-`, "Div", NULL)
Run Code Online (Sandbox Code Playgroud)

  • 除非你不能阅读R,否则使用`for`循环的可读性没有增加.应用的一个重要目的是表达性并避免编写长`for`循环的典型趋势.只考虑通过单独的应用单独执行每个步骤通常可以提高性能,因为在那里的某个地方可以进行矢量化操作. (2认同)