Чтение и перечисление объектов в порядке их появления в исходном файле в R

У меня есть файл со списком путей к URL-адресам и и файлы, которые похожи на извлечение ниже:

urls_queries_files.R

url_some_dta <- "url_goes_here"
backup_some_dta <- "path to the backup rds file goes here"
url_exotic_dta <- "another_url"
backup_exotic_dta <- "some backup rds file"
url_mysterious_dta <- "url goes here"
backup_mysterious_dta <- "backup rds file for myst. dta"

Я читаю эти файлы через source команда:

source(file = "urls_queries_files.R", local = TRUE)

Когда я перечисляю объекты, объекты появляются в алфавитном порядке:

> ls()
[1] "backup_exotic_dta"  "backup_mysterious_dta" "backup_some_dta" "url_exotic_dta"       
[5] "url_mysterious_dta"    "url_some_dta" 

Это проблематично, так как мне интересно читать эти объекты в том порядке, в котором они перечислены в исходном файле (urls_queries_files.R). Причина в том, что я хочу составить короткий сценарий, который создаст резервную копию rds файлы при успешной загрузке URL. Я напишу простой цикл, который выполняет загрузку, используя значение из первого объекта, и, если это успешно, сохраните rds файл (rds файлы и URLs позже используются для заполнения фреймов данных). Все это довольно просто, но было бы намного проще, если бы я мог ссылаться на объекты так, как они перечислены в исходном файле. Я мог бы просто тогда:

all_objs <- ls()

и делаю мои операции: all_objs[i] а также all_objs[i+1], Похоже, что ls с сортировкой FALSE Также не возвращает желаемых результатов:

> ls(sorted = FALSE)
[1] "url_mysterious_dta"    "url_exotic_dta"       
[3] "backup_mysterious_dta" "backup_exotic_dta"    
[5] "url_some_dta"          "backup_some_dta" 

Мои вопросы:

  1. Как составить список объектов R в порядке их ввода в исходном файле?
  2. Из любопытства: Бег ls с sorted = FALSE По-видимому, возвращает список, который не соответствует тому, что было напечатано в исходном файле. Следовательно, мне интересно, как это source Команда определить, какой объект появляется первым в списке?

1 ответ

Решение

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

Другие вопросы по тегам