預(yù)答辯的時(shí)候尤平老師說(shuō)你們幾個(gè)要注意一下卖局,不要有重復(fù)文獻(xiàn)浓若。
于是打算查一下渺杉,200多個(gè)文獻(xiàn),總不能一條一條的查吧挪钓。果斷想到了Python:
參考文獻(xiàn)格式(文獻(xiàn).txt):
[1] SEMENZA G L. Life with Oxygen[J]. Science, 2007, 318(5847): 62–64.
[2] 王建枝, 錢睿哲. 病理生理學(xué)[M]. 人民衛(wèi)生出版社, 2018.
[3] MYLONIS I, SIMOS G, PARASKEVA E. Hypoxia-Inducible Factors and the Regulation of Lipid Metabolism[J]. Cells, 2019, 8(3): 214.
[4] WILSON W R, HAY M P. Targeting hypoxia in cancer therapy[J]. Nature Reviews Cancer, 2011, 11(6): 393–410.
基本思路是只保留作者名是越,然后比較重復(fù)的作者。
import re
with open("文獻(xiàn).txt", "r", encoding = "utf-8") as f:
FirstName = []
for vLine in f.readlines():
try:
# 將序號(hào)清除掉
vLineRemoveId = vLine.replace(re.search("\[[\d]*?\]\t", vLine, re.S).group(0), "");
# 將作者名之外的內(nèi)容清除
vLineRemovedOther = vLineRemoveId.replace(re.search("\.[\d\D]*", vLineRemoveId, re.S).group(0), "")
except:
continue
FirstName.append(vLineRemovedOther)
vDoubleNames = []
for vName in sorted(FirstName):
# 和新列表比較碌上,如果在新列表中就說(shuō)明重復(fù)了倚评,將其打印出來(lái)
if vName.replace(re.search("[\d]*", vName, re.S).group(0), "") in vDoubleNames:
print(vName)
# 如果不在新列表中浦徊,則說(shuō)明第一次出現(xiàn),將其添加進(jìn)新列表中
else:
vDoubleNames.append(vName)
運(yùn)行后輸出結(jié)果為:
BARTUZI P, BILLADEAU D D, FAVIER R, et al
DALY N L, SCANLON M J, DJORDJEVIC J T, et al
FURUTA E, PAI S K, ZHAN R, et al
MUNIR R, LISEC J, SWINNEN J V, et al
SEMENZA G L
SVENSSON R U, PARKER S J, EICHNER L J, et al
SWINNEN J V, BRUSSELMANS K, VERHOEVEN G
李曉晨, 王廷正
李曉晨, 王廷正
李金鋼, 何建平, 王廷正
李金鋼, 王廷正
王茁
王鏡巖, 朱圣庚, 徐長(zhǎng)法
把這些名字拿到論文中搜索發(fā)現(xiàn)中文的這幾個(gè)都沒(méi)有重復(fù)天梧,是因?yàn)橄嗤娜艘硕嗥恼驴浴S⑽拿种校齋EMENZA G L都是重復(fù)文獻(xiàn)呢岗,在zotero中看了一下冕香,是因?yàn)槲抑貜?fù)將文獻(xiàn)收進(jìn)了不同的目錄,導(dǎo)致插入文獻(xiàn)的時(shí)候被重復(fù)編號(hào)了后豫。
SEMENZA G L的查詢結(jié)果最讓我吃驚:
諾獎(jiǎng).png
這一看就是個(gè)大佬悉尾,竟然引了他五篇文獻(xiàn),去年諾獎(jiǎng)就是研究低氧的挫酿,果斷去查了一下构眯,不出所料,是其中之一:
諾獎(jiǎng)2.png
好奇心起早龟,查了一下另外兩個(gè)大佬惫霸,結(jié)果一篇都沒(méi)有引= =,等終稿前再看看其它兩個(gè)人的研究葱弟。
等后面有時(shí)間了再優(yōu)化一下壹店,保證篩出來(lái)的一定是重復(fù)文獻(xiàn)。