r - 如何从函数返回具有给定名称的 data.frame?

标签 r lapply

假设我有一个函数可以从 MySQL 表中读取数据,对其进行操作并返回一些 data.frame。请注意,该函数只是一个示例,其功能本身并不重要...,例如:

addRowSd <- function(table,con,pattern="^Variable") {

dframe <- dbReadTable(con,table)
cn <- colnames(dframe)
qs <- subset(x, x  %in% grep(pattern, x, value=TRUE))
dframe$qsd <- sd(t(dframe[,c(qs)])) 

return(dframe)
}

mydf$sd <- addRowSd(...)

我最终得到一个名为 mydf 的 data.frame。现在我想对 SQL 表名称的字符向量执行此操作,并相应地命名返回的数据帧。如果我只是使用
x=lapply(MySQLtablenames,addRowSd,con)

我会得到一些名为 x 的列表。当然,我可以按照我想要的方式取消列出和重命名所有内容,但我的问题是:

我怎样才能让 lapply(或其他类似的函数)返回多个单个数据帧或至少一个包含一些从我的字符向量“MySQLtablenames”派生的名称的列表?

最佳答案

刚刚自己找到了一个答案:

assign("somename",dframe,envir = .GlobalEnv)

关于r - 如何从函数返回具有给定名称的 data.frame?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4041806/

相关文章:

r - 在子函数内部打印父函数的名称

r - mutate(across) 在 tidyverse 中生成多个新列

r - kNN - r 中有很多关系

r - 从列表中提取值和属性并将其转换为 R 中的数据框

r - 将 lapply 与日期和减号函数结合使用

R: `gtsummary` 表格中的 Markdown 或 HTML 标记

r - 插入符号 : Choosing the correct number of cores in parallel backend

r - parLapply - 如何解决错误 "Could not find function "bindToEnv""?

r - 使用 lapply 函数的并行版本保留列表名称

r - 查找哪些点在每个点的给定距离内