10得票2回答
在使用`weights`参数调用`lapply`中的`lm`时出现错误。

在使用weights参数时,在lapply中调用lm时,我遇到了一种奇怪的行为。我的代码由一个公式列表组成,在其中运行线性模型,并在lapply中调用。到目前为止,它一直在工作: dd <- data.frame(y = rnorm(100), x1 ...

7得票3回答
如何对列表中的子列表应用lapply函数

假设我有一个列表,其中嵌套着另一个列表,并且我有一些仅适用于向量的函数(如stringr包中的str_replace)。该函数应在实际包含信息的每个元素上执行其工作,这就需要解决以下问题: 问题1:是否有特定的解决方案? 问题2:是否有通用解决方案? 使用循环应该可以解决问题,但这并不优雅...

7得票1回答
在R中循环嵌套列表

我有一个嵌套15层的巨大列表。我需要将出现在任何层次上的空列表替换为“chr”。“我尝试使用lapply循环遍历该列表,但它并没有起作用。有没有更简单的方法来做到这一点? nested_list<-list(a=list(x=list(),y=list(i=list(),j=list(...

82得票6回答
在lapply函数中访问和保留列表名称

我需要在lapply函数中访问列表名称。我在网上找到了一些线程,其中说我应该通过迭代列表的名称来能够在我的函数中获取每个列表元素的名称:> n = names(mylist) > mynewlist = lapply(n, function(nameindex, mylist) {...

11得票1回答
使用rep()函数创建向量列表

我想创建一个列表,它是向量c(2,6)的八倍,即包含8个向量的列表。 错误:object = as.list(rep(c(2,6),8))实际上会生成一个由16个单独数字组成的列表:2 6 2 6 2 6 2 6 ... 我试过使用drop=0但没有帮助,而且我无法让lapply工作。 ...

8得票2回答
"apply"函数有哪些优点?何时使用它们比使用"for"循环更好,何时不是?

可能是重复问题: R的apply家族是否只是语法糖 就像标题所说的那样。也许是一个愚蠢的问题,但我的理解是,在使用“apply”函数时,迭代是在编译代码中而不是在R解析器中执行的。这似乎意味着,例如lapply仅在有很多迭代且每个操作相对简单时才比“for”循环更快。例如,如果lapp...

7得票1回答
在列表中重命名数据框的列

我正在尝试使用lapply(并且希望使用lapply解决方案)来重命名位于列表中的数据框的列,但它返回的是列名,而不是重命名后的数据框: # define list li <- list(u_n = data.frame(x = 1:3), r_l = data.frame(y = 4...

13得票3回答
在函数内部使用lapply中的get函数

这个问题可能看起来有点复杂,但让我烦恼了一段时间。这也只是出于好奇,因为我已经有了完成所需的方法,所以并不是很重要。 在R中,我需要一个函数来返回一个命名的列表对象,其中包括用户输入的所有参数和值。为此,我编写了以下代码(玩具示例):foo <- function(a=1, b=5, ...

7得票1回答
使用位置向量的子向量列表

我有一个向量列表(mylist): a <- c(1,2,3,4) b <- c(5,6,7,8) c <- c(9,10,11,12) mylist <- list(a,b,c) 我也有一个位置向量(mypos): mypos <- c(1,2,3) ...

12得票2回答
为什么lapply()函数不能保留我的data.table键?

我有一个数据表列表,想对每个数据表应用unique()函数,但这样做会破坏所有的数据表键。 以下是一个例子:A <- data.table(a = rep(c("a","b"), each = 3), b = runif(6), key = "a") B <- data.tabl...