Как превратить серию идентификаторов в соответствующие URL-адреса? - PullRequest
0 голосов
/ 10 января 2020

Итак, у меня есть список из 1350 идентификаторов из базы данных RePE c, который выглядит следующим образом:

repec_id <- c("RePEc:bep:uomlwp:umichlwps-1003", "RePEc:hal:wpaper:hal-02187883", "RePEc:hal:journl:hal-02184200")

Каждый идентификатор соответствует веб-странице. вы получаете к нему, удаляя данные перед первым двоеточием (а также самим первым двоеточием), затем заменяя следующие двоеточия на "/" и добавляя ".html" в конце. Я хочу получить список этих сайтов. Другими словами, я хочу, чтобы мой вывод выглядел так:

links <- c("https://ideas.repec.org/p/bep/uomlwp/umichlwps-1003.html", "https://ideas.repec.org/p/hal/wpaper/hal-02187883.html", "https://ideas.repec.org/p/hal/journl/hal-02184200.html")

Кто-нибудь знает, как я это делаю? Я немного потерян. Заранее благодарю за помощь!

Ответы [ 2 ]

2 голосов
/ 10 января 2020
1 голос
/ 10 января 2020

Это должно работать независимо от того, с чего начинается каждый repec_id (перед первым двоеточием).

library(stringr)

repec_id <- c("RePEc:bep:uomlwp:umichlwps-1003", "RePEc:hal:wpaper:hal-02187883", "RePEc:hal:journl:hal-02184200")


str_remove(repec_id, '^[^:]*:') %>%  #remove everything before 1st colon
  str_replace_all(pattern = ':', replacement = '/') %>% #replace colons with '/'
  paste0('https://ideas.repec.org/p/', .,'.html')       #paste everything together

#> [1] "https://ideas.repec.org/p/bep/uomlwp/umichlwps-1003.html"
#> [2] "https://ideas.repec.org/p/hal/wpaper/hal-02187883.html"  
#> [3] "https://ideas.repec.org/p/hal/journl/hal-02184200.html"

Создано в 2020-01-10 пакетом Представить ( v0.3.0)

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