240得票5回答
为什么要使用purrr::map而不是lapply?

有没有任何理由让我使用 map(<list-like-object>, function(x) <do stuff>) 代替 lapply(<list-like-object>, function(x) <do stuff>) 输出应...

213得票12回答
在FUN函数中访问lapply的索引名称

在我的lapply() 函数中,有没有一种方法可以获取列表索引名称?n = names(mylist) lapply(mylist, function(list.elem) { cat("What is the name of this list element?\n" }) 我之前曾经询问过...

149得票4回答
向lapply(和其他* apply)的FUN传递多个参数

关于在使用R的lapply函数时传递多个参数的问题,我有一个疑问。 当我使用lapply(input, myfun)这种语法时,很容易理解,我可以像这样定义myfun:myfun <- function(x) { # doing something here with x } lap...

108得票3回答
读取文件夹中的所有文件,并对每个数据框应用一个函数。

我正在进行相对简单的分析工作,并将其放入一个函数中,以处理特定文件夹中的所有文件。我想知道是否有任何提示可以帮助我自动化在多个不同文件夹上处理数据的过程。 首先,我想知道是否有一种方法可以将特定文件夹中的所有文件直接读取到R中。我相信以下命令将列出所有文件: files <- (Sy...

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

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

63得票3回答
从两个向量(名称,值)创建一个命名列表

有没有办法使用mapply函数在两个向量上构建一个具有名称的列表?第一个向量应该是character类型,包含用于列表的名称,而第二个向量则包含值。 到目前为止,我唯一的解决方案是:> dummyList = list() > addToList <- function(n...

54得票4回答
更快的读取固定宽度文件的方法

我使用许多固定宽度的文件(即没有分隔符)需要在 R 中读取。因此,通常需要定义列宽以将字符串解析为变量。我可以使用 read.fwf 无问题地读取数据。但是对于大型文件,这可能需要很长时间。对于最近的一个数据集,读取包含约 500,000 行和 143 个变量的数据集花费了 800 秒钟。se...

48得票4回答
如何告诉lapply忽略错误并处理列表中的下一项?

我有一个示例函数,可以将日期字符串读入并将其作为日期对象返回。如果它读取的字符串无法转换为日期,则返回一个错误。testFunction <- function (date_in) { return(as.Date(date_in)) } testFunction("2...

48得票11回答
将多个CSV文件读入单独的数据框架中

假设我们有目录 C:\R\Data 中的文件 file1.csv、file2.csv,...,file100.csv,并且我们希望将它们全部读入单独的数据框(例如 file1、file2,...,file100)。 之所以这样做是因为尽管它们具有相似的名称,但它们具有不同的文件结构,因此将它...

44得票3回答
for循环与apply函数族在性能上有何区别?

通常人们说应该优先选择lapply而不是for循环。但也有例外情况,比如Hadley Wickham在他的Advance R书中指出的一些情况。 (http://adv-r.had.co.nz/Functionals.html)(例如就地修改、递归等)。下面是其中之一。 仅为了学习目的,我...