Найти цитаты любой конкретной статьи несложно.
Но как определить набор публикаций, в которых цитируются две конкретные работы?
Причина, по которой я спрашиваю об этом, заключается в том, что я пытаюсь написать обзорную статью, чтобы решить проблему в литературе. Есть 2 статьи, которые придерживаются противоположных взглядов на этот вопрос. Чтобы проверить, не предпринимались ли ранее попытки провести какое-либо исследование, подобное моему, я пытаюсь найти любые статьи, в которых эти две статьи цитировались вместе. Любой способ сделать это?
Каждая статья имеет сотни цитирований, поэтому поиск общих цитирований нецелесообразен!
Моя процедура была простой, но работала для меня. Это похоже, но отличается от предложенного tripartio.
Это не так систематично, как было бы идеально, но должно помочь дать первое представление.
Можно использовать API OpenCitations . Вот пример кода в R , основанный на двух DOI, видимых в виде https://w3id.org/oc/index/coci/api/v1/citations/[DOI]
:
library(jsonlite)
work1 <- jsonlite::fromJSON("https://opencitations.net/index/coci/api/v1/citations/10.1017/s0020818313000337")
work2 <- jsonlite::fromJSON("https://opencitations.net/index/coci/api/v1/citations/10.1177/1354066106067346")
citingworks <- intersect(work1$citing, work2$citing)
Затем citingworks
перечисляет 32 DOI, которые цитируют work1
и , и work2
:
> citingworks
[1] "10.1017/9781108644082" "10.1017/9781108644082.001"
[3] "10.1017/9781108644082.002" "10.1017/9781108644082.003"
[5] "10.1017/9781108644082.004" "10.1017/9781108644082.005"
[7] "10.1017/9781108644082.006" "10.1017/9781108644082.007"
[9] "10.1017/9781108644082.008" "10.1017/9781108644082.009"
[11] "10.1017/9781108644082.010" "10.1177/1354066119889401"
[13] "10.1093/jogss/ogy021" "10.31338/uw.9788323542988"
[15] "10.1080/13533312.2020.1753513" "10.1080/13569775.2020.1795372"
[17] "10.1007/978-3-030-51521-8_1" "10.1007/978-3-030-51521-8_2"
[19] "10.1080/13600826.2020.1828298" "10.1057/s41268-018-0147-z"
[21] "10.1146/annurev-polisci-040711-135425" "10.1111/pops.12616"
[23] "10.1093/isq/sqz055" "10.1093/isr/viy006"
[25] "10.1093/isr/viz002" "10.1017/s0260210516000176"
[27] "10.1017/s026021051600019x" "10.3384/cu.2000.1525.1572479"
[29] "10.1177/1354066117745365" "10.1163/24056006-12340008"
[31] "10.1177/0010836716653161" "10.1080/09662839.2018.1497985"
Но обратите внимание, что выборка данных OpenCitation — это CrossRef , а не то же самое, что Google Scholar .
Сам этим не занимался, поэтому конкретных подробностей дать не могу, но вот общий алгоритм:
Для биомедицинских публикаций вы можете использовать сеть цитирования PMC Европы (я работаю в этой базе данных). Вот пример поиска публикации, в которой цитируются две конкретные статьи: https://europepmc.org/search?query=CITES%3A24240771_med%20AND%20CITES%3A24036476_med . Вы также можете сделать это программно ( https://europepmc.org/RestfulWebService#cites ).
Это можно сделать с достаточно высокой точностью с помощью Scopus, и это намного проще, чем другие предложенные здесь методы. Просто выполните расширенный поиск
"название статьи 1" И "название статьи 2"
Идея состоит в том, что публикации, цитирующие эти две статьи, будут иметь свои названия в разделе ссылок.
Это может не дать абсолютно точных результатов, потому что:
Возможно, вы сможете обойти эти проблемы, включив имена авторов или номера страниц и выполнив более сложный поиск. См. https://www.scopus.com/search/form.uri?display=advanced .
Конечно, вам нужен доступ к Scopus, а в вашем учреждении его может и не быть. Но что-то подобное может работать с Google Scholar.
Использование API OpenCitation в Python будет выглядеть так:
import requests
import pandas as pd
import numpy as np
link1 = "https://opencitations.net/index/coci/api/v1/citations/10.1017/s0020818313000337"
work1 = requests.get(link1).json()
df1 = pd.DataFrame.from_dict(work1)
link2 = "https://opencitations.net/index/coci/api/v1/citations/10.1177/1354066106067346"
work2 = requests.get(link2).json()
df2 = pd.DataFrame.from_dict(work2)
print(np.intersect1d(df1['citing'].unique(), df2['citing'].unique()))
пользователь64845
Моа
пользователь64845
Эдгар