r - 用文件名中的参数在R中编写一个csv文件
问题描述
我正在R中做一个小型日志处理项目。我正在尝试编写一个获取数据框的函数,并将其写入带有一些参数(数据框名称,今天的日期..等)的csv文件
我已经取得了一些进展,但没有设法编写 csv。我希望代码是可重现且良好的。
library(dplyr)
wrt_csv <- function(df) {
dfname <- deparse(substitute(df))
dfpath <- paste0('"',"./logs/",dfname, "_", Sys.Date(),'.csv"')
dfpath <- as.data.frame(dfpath)
df %>% write_excel_csv(dfpath)
}
wrt_csv(mtcars)
编辑-这是一个运行良好的最终版本。感谢罗纳克·沙阿。
wd<- getwd()
wrt_csv <- function(df) {
dfname <- deparse(substitute(df))
dfpath <- paste0(wd,'/logs/',dfname, '_', Sys.Date(),'.csv')
df %>% write_excel_csv(dfpath)
}
但是,我现在确实有一堆数据框,我想用它们来运行该函数。我应该把它们列成一个清单吗?这不太奏效
l <- list(df1,df2)
lapply(l , wrt_csv)
有什么想法吗?谢谢!
解决方案
保留dfpath
为字符串。尝试 :
wrt_csv <- function(df) {
dfname <- deparse(substitute(df))
dfpath <- paste0('/logs/',dfname, '_', Sys.Date(),'.csv')
write.csv(df, dfpath, row.names = FALSE)
#Or same as OP
#df %>% write_excel_csv(dfpath)
}
wrt_csv(mtcars)
推荐阅读
- regex - 如何正则表达式字符串
- php - PHP排序多维数组问题
- mysql - 用于查找不同元素的 SQL 查询不起作用
- android - RecyclerView 最初滚动不顺畅
- excel - 复制粘贴行而不增加公式引用
- .net - .Net Core Web API,根据值创建路由逻辑到具有相同路由前缀的不同控制器
- ansible - 我想使用 ansible playbook 重命名文件
- kubernetes - K8s 教程在我的本地安装中因 i/o 超时而失败
- jenkins - 如何设置 Jenkins 作业以从 excel 文件中读取并将其用作我的构建参数?
- swift - 初学者问题 - 为什么我应该在这个例子中使用嵌套循环?