От новичка до гуру: Курсы программирования на CyberDuff

Как читать csv внутри папки в R?

Я работаю в каталоге, но данные, которые я хочу прочитать, находятся в подкаталоге. Я получаю сообщение об ошибке, когда пытаюсь прочитать файлы csv, мой код следующий:

setwd("~/Documents/")
files <- list.files(path = "data/")
f <- list()
for (i in 1:length(files)) {
  f[[i]] <- read.csv(files[i], header = T, sep = ";")
}

И ошибка, которую я получаю:

Error in file(file, "rt"): cannot open the connection

Что я делаю не так?

30.07.2015

  • Попробуйте paste0("data/", files[i]). files содержит имена файлов, а не относительные пути. 30.07.2015
  • использование list.files(path = "data/", full.names = TRUE), скорее всего, решит проблему. 30.07.2015
  • спасибо @ user2706569 работает отлично. 30.07.2015
  • спасибо @Benjamin, твой ответ также работает 30.07.2015

Ответы:


1

Следующее будет работать, если вы правильно указали другие параметры read.csv.

setwd("~/Documents/")
files <- list.files(path = "data/")
f <- list()
for (i in 1:length(files)) {
  f[[i]] <- read.csv(paste0("data/",files[i]), header = T, sep = ";")
}

В качестве альтернативы вы можете удалить paste0 и просто установить свой рабочий каталог на ~/Documents/data/ в первую очередь.

setwd("~/Documents/data/")
files <- list.files() #No parameter necessary now since you're in the proper directory
f <- list()
for (i in 1:length(files)) {
  f[[i]] <- read.csv(files[i], header = T, sep = ";")
}

Если вам нужно быть в ~/Documents/ в конце этого цикла, завершите его, добавив следующее после цикла.

setwd("~/Documents/")
30.07.2015
  • спасибо, мне нужно использовать подкаталог, потому что у меня больше файлов в основном каталоге, так как я работаю над проектом Rstudio. 30.07.2015
  • Новые материалы

    ИИ меняет этику в руководстве
    Связь искусственного интеллекта, лидерства и этики Сострадание, глубокое понимание чужих страданий в сочетании с желанием облегчить их, возвышается как неотъемлемая человеческая добродетель...

    Представляем Narwhal Technologies (Nrwl)
    6 декабря 2016 г. Маунтин-Вью, Калифорния С тех пор, как Виктор Савкин и я (Джефф Кросс) присоединились к команде Angular в Google на заре Angular 1, Angular продемонстрировал феноменальный..

    Путь AWS  — «Изучение машинного обучения — 10 начинающих ИИ и машинного обучения на AWS».
    Универсальный ресурсный центр для изучения искусственного интеллекта и машинного обучения. НОЛЬ или ГЕРОЙ, начните свое путешествие здесь. Получите решения и пройдите обучение у экспертов AWS...

    5 простых концепций Python, ставших сложными
    #заранее извините 1) Переменные x = 4 y = 5 Переменная в Python — это символическое представление объекта. После присвоения некоторого объекта переменной Python мы приобретаем..

    «Освоение вероятности: изучение совместной, предельной, условной вероятности и теоремы Байеса —…
    Виды вероятности: Совместная вероятность Предельная вероятность Условная вероятность Диаграмма Венна в вероятностях: В “Set Theory” мы создаем диаграмму Венна...

    Основы Spring: Bean-компоненты, контейнер и внедрение зависимостей
    Как лего может помочь нашему пониманию Когда мы начинаем использовать Spring, нам бросают много терминов, и может быть трудно понять, что они все означают. Итак, мы разберем основы и будем..

    Отслеживание состояния с течением времени с дифференцированием снимков
    Время от времени что-то происходит и революционизирует часть моего рабочего процесса разработки. Что-то более забавное вместо типичного утомительного и утомительного процесса разработки. В..