将多个csv文件导入具有特定条件的独立数据帧(合并列,跳过等)

时间:2017-08-04 14:21:34

标签: r csv import

我是R的新手,我遇到了一个问题。我有一个包含50个csv文件的文件夹,每个文件代表一个城市。我想将每个csv文件导入R studio作为独立的数据帧,最终在一个时间序列图中绘制所有50个城市。

我想对每个csv文件做四件事,但最后,让它自动化,对50个csv文件中的每一个都执行这四个操作。

  1. 跳过csv文件的前25行

  2. 合并每个csv文件的日期和时间列

  3. 删除第3列中单元格中的值为空的行

  4. 将第3列的名称从“ug / m3”更改为“CO”

  5. 跳过后,第一行将是标题

    我在一个csv文件中使用了以下代码,看看它是否适用于除city[,3][!(is.na(city[,3]))]之外的一个csv.Everything工作。

    city1 <- read.csv("path",
                            skip = 25)
    
    city1$rtime <- strptime(paste(city1$Date, city1$Time), "%m/%d/%Y %H:%M")
    
    colnames(city1)[3] <- "CO"
    
    city[,3][!(is.na(city[,3]))] ## side note: help with this would be appreciated, I was if something goes before the comma especially.
    

    我不确定如何在一个函数中以有效的方式组合所有内容。

    我希望能够有效地对每个csv文件执行4个操作(可能在函数语句中),同时将它们导入到R中。

1 个答案:

答案 0 :(得分:0)

对要阅读的每个csv使用此功能

read_combine <- function(yourfile){

file <- read.csv(yourfile,skip=25)
file$rtime <- strptime(paste(file $Date, file $Time), "%m/%d/%Y %H:%M")
colnames(file)[3] <- "CO"
file$CO[!is.na(file$CO)]

}

你的文件必须是“路径”