我想修改下面的代码段,它读取几个.csv(逗号分隔值)文件,以通知它文件是制表符分隔的,即.tsv文件。
temp = list.files(pattern="*.csv")
myfiles = lapply(temp, read.delim)
对于单个文件,我做了(使用readr包):
data_1 <- readr::read_delim("dataset_1.csv", "\t", escape_double = FALSE, trim_ws = TRUE)
有任何帮助吗?谢谢,
里卡多。
答案 0 :(得分:2)
我想你要找的是以下内容:
版本1:用户定义的功能
my_read_delim <- function(path){
readr::read_delim(path, "\t", escape_double = FALSE, trim_ws = TRUE)
}
lapply(temp, my_read_delim)
版本2:使用...
的{{1}}参数
lapply
具有第三个参数lapply
,这意味着第二个参数传递给指定为第二个参数的函数:
...
版本2与版本1基本相同,但更紧凑
假设所有文件都有相同的列:
在通过lapply(temp, readr::read_delim, delim = "\t", escape_double = FALSE, trim_ws = TRUE)
阅读数据后的大多数应用中,您希望read_delim
他们。您可以使用rbind
包中的map_df
来简化此操作,如下所示:
purrr