我的R代码不会抛出任何错误,但它没有做到它应该做的事情

时间:2017-11-17 21:15:47

标签: r csv export-to-csv data-cleaning import-from-csv

我的问题的一些背景:这是以前的研究助理写的R剧本,但他没有为我自己使用它提供任何指导。在完成R教科书后,我尝试在我的数据文件上使用代码。

此代码应该执行的操作是加载多个.csv文件,从中删除某些项目/列,然后将新清除的.csv文件写入指定目录。

当我运行我的代码时,我没有收到任何错误,但代码没有任何意义。我原本以为这是文件权限的问题,但我在更改后仍然遇到问题。不知道下一步该尝试什么。

以下是代码:

library(data.table)
library(magrittr)
library(stringr)

# create a function to delete unnecessary variables from a CAFAS or PECFAS 
data set and save the reduced copy

del.items <- function(file)
{  
  data <- read.csv(input = paste0("../data/pecfas|cafas/raw", 
str_match(pattern = "cafas|pecfas", string = file) %>% tolower, "/raw/", 
file), sep = ",", header = TRUE, na.strings = "", stringsAsFactors = FALSE, 
skip = 0, colClasses = "character", data.table = FALSE)

  data <- data[-grep(pattern = "^(CA|PEC)FAS_E[0-9]+(T(Initial|[0-
9]+|Exit)|SP[a-z])_(G|S|Item)[0-9]+$", x = names(data))]

  write.csv(data, file = paste0("../data/pecfas|cafas/items-del", 
str_match(pattern = "cafas|pecfas", string = file) %>% tolower, "/items-
del/", sub(pattern = "ExportData_", x = file, replacement = "")) %>% 
tolower, sep = ",", row.names = FALSE, col.names = TRUE)
}

# delete items from all cafas data sets

cafas.files <- list.files("../data/cafas/raw/", pattern = ".csv")

for (file in cafas.files){
  del.items(file)
}

# delete items from all pecfas data sets

pecfas.files <- list.files("../data/pecfas/raw/", pattern = ".csv")

 for (file in pecfas.files){
  del.items(file)
}

0 个答案:

没有答案