Запись независимого от ОС пути к файлу - PullRequest
0 голосов
/ 18 мая 2018

Я обнаружил, что работаю с некоторыми файлами R как в Windows, так и в OSX.

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

Чтобы сделать это способом, который работает для обеих ОС (ОС?), У меня есть что-то вроде этого в верхней части большинства файлов:

if (Sys.info()['sysname'] == 'Windows'){
    project_path <- "C:/Users/Bilbo/project_folder"
} else { 
    project_path <- "~/project_folder"

Было бы неплохо не реализовыватьэто отдельно в каждом файле.Одна идея состоит в том, чтобы написать одну функцию get_folder_path(), которая возвращает соответствующий путь, но проблема в том, что мне придется импортировать файл с этой функцией с source(), что требует от меня запроса Sys.info()['sysname'], что побеждает цель.

Кажется чрезмерным писать пакет только с этой функцией (хотя я никогда не использовал roxygen, и это может быть хорошим упражнением), поэтому я могу просто выполнить library(agnosticImporter).

Какие-нибудь яркие идеи?

1 Ответ

0 голосов
/ 02 июля 2018

Мне не повезло с комментариями, поэтому я написал крошечный пакет для этой цели.

Функция get_home_dir() из agnOStic возвращает «C: \\ Users \\ Bilbo \\» в Windows и «~ /» в Mac или Linux.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...