Почему рабочий каталог перезаписывается в каталог текущего файла Rmd? - PullRequest
0 голосов
/ 07 ноября 2019

У меня есть файл R.proj с именем Food_Choices.Rproj, который должен устанавливать мой рабочий каталог на ~/Desktop/Food_Choices, папку, содержащую файлы воспроизводимости в соответствии с системой TIER, например

enter image description here

Но это не правильная настройка рабочего каталога, потому что, когда я связываю свой файл обработки с кодом, подобным этому

food<-read_csv("Original_Data/food_coded.csv")

#imagine some processing code in between here

write.csv(food, file = "Analysis-Data/analysis_data.csv")

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

Ошибка: 'Original_Data / food_coded.csv' не существует в текущем рабочем каталоге ('/Users/IdanCarre/Desktop/Food_Choices/Command_Files').

, который не является каталогом проекта,это каталог файла обработки!

Я думал, что установил рабочий каталог, когда открыл файлы в контексте проекта R, но, похоже, этого больше не происходит (хотя мои файлы год назад с той же настройкой все ещеработа ??)

ПРИМЕЧАНИЕ: я не хочу использовать

library(knitr)
opts_knit$set(root.dir = '/Users/IdanCarre/Desktop/Food_Choices')

Потому что тогда новые пользователи, которые хотят воспроизвести результаты, вынуждены вручную вставлять своисобственный каталог в каждый файл, который они хотят запустить. Это большая работа, которую им не нужно делать.

ОБНОВЛЕНИЕ К КОММЕНТАРИЯМ:

Я использовал пакет here, и он удовлетворительно работает для read.csv (он выбрасывает столбец данныхпредупреждение о дублировании, но я думаю, что это, вероятно, пока нормально), но когда я записываю обработанный файл данных в папку данных анализа, я пытаюсь использовать

write.csv(food, file = here("Analysis-Data", "analysis_data.csv"))

И полученная ошибка

Ошибка в файле (file, ifelse (append, "a", "w")): не удается открыть соединение

У меня возникает такая же проблема, если я использую

write.csv(food, file = "Analysis-Data/analysis_data.csv")
...