Библиография c Данные с использованием RISmed, без загрузки всех переменных - PullRequest
0 голосов
/ 28 марта 2020

Попытка получить даты, принятые RISmed для систематического c обзора, и по какой-то причине это не работает.



##########  LOAD PACKAGES  ########## 

library(RISmed)

### Defined Search Paramaters 

srch_nejm <- "((2020/01/01[PDat]:2020/4/01[PDat])) AND (0028-4793[ISSN])"

EUtilsSummary(
      retmax=10000, 
      mindate= 1995,
      maxdate= 2021,
      datetype = "ppdt") %>% 
    EUtilsGet(type = "efetch", db = "pubmed")


### Build function to scrape Pubmed into S4  

scrape_pubmed <- function (x) {
  x %>%
    EUtilsSummary(
      retmax=10000, 
      mindate= 1995,
      maxdate= 2021,
      datetype = "ppdt") %>% 
    EUtilsGet(type = "efetch", db = "pubmed")
}

### Build function to pull relevant data from S4 into list of lists 

make_list <- function (x) {
  list(
    'PMID' = PMID(x),
    'year' = ArticleTitle(x), 
    'month' = MonthPubmed(x),
    'day' = DayPubmed(x), 
    'ISSN' = ISSN(x),
    'title' = ArticleTitle(x),
    'year_acc' = YearAccepted(x),
    'month_acc' = MonthAccepted(x),
    'day_acc' = DayAccepted(x)
    )
}

### Build function to generate dataframe from lists 

extract_data <- function (x) {
  pmap_dfr(x, ~data.frame(
    PMID = .x, 
    year = .y, 
    month = ..3, 
    day = ..4, 
    ISSN = ..5,
    title = ..6, 
    year_acc = ..7,
    month_acc = ..8, 
    day_acc = ..9, 
    stringsAsFactors = FALSE))
}

### Build function to create scrape, list, and dataframe process

gen_df <- function(x) {
  x %>% 
    scrape_pubmed() %>% 
    make_list() %>% 
    extract_data()
}

Так вот код, который я написал для поиска. Надеюсь, кто-то найдет это полезным. Теперь, когда я go, чтобы использовать его:


df_nem <- gen_df(srch(nejm)

> glimpse(df_nejm)
Observations: 6,766
Variables: 16
$ PMID            <chr> "32212540", "32212540", "32212540", "3221…
$ year            <chr> "Audio Interview: Practical Measures to H…
$ month           <dbl> 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3,…
$ day             <dbl> 27, 27, 27, 27, 27, 27, 27, 27, 27, 27, 2…
$ ISSN            <chr> "1533-4406", "1533-4406", "1533-4406", "1…
$ title           <chr> "Audio Interview: Practical Measures to H…
$ year_acc        <dbl> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, N…
$ month_acc       <dbl> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, N…
$ day_acc         <dbl> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, N…

Все переменные работают, кроме тех, которые о дате принятия.

Кто-нибудь знает, почему даты не отображаются для принятого года / месяца / даты? Очень расстраивает. Спасибо!

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