日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術文章
文章詳情頁

Python 利用Entrez庫篩選下載PubMed文獻摘要的示例

瀏覽:168日期:2022-07-04 13:59:02

作者:xiaolanLin

聲明 :本文版權歸作者和博客園共有,來源網址:https://www.cnblogs.com/xiaolan-Lin

一個不是學生物的孩子來搞生物,當真是變成了一塊廢鐵啊,但也是讓我體會到了一把生物信息的力量。

廢話不多說,開整!

任務:快速高效從PubMed上下載滿足條件的文獻PMID、標題(TI)、摘要(AB)。

PubMed官網 https://pubmed.ncbi.nlm.nih.gov

此處有幾種選擇可以達到目的:

(1)官網上匹配篩選條件(注:匹配快速,但是下載下來的數量受到限制,每次只能下載10000條數據,甚至更少。)

Python 利用Entrez庫篩選下載PubMed文獻摘要的示例

可以看到,我需要的數據是有三十多萬條,但是每次只能下載10000條,那我豈不是要手動n次。。很明顯,在大批量下載文獻的情況下,官網不是很友好。

(2)R語言有個R包,叫做easyPubMed,這里我也給大家貼上學習指南(https://cran.r-project.org/web/packages/easyPubMed/vignettes/getting_started_with_easyPubMed.html)

由于我不喜歡用R寫代碼,所以我寫一半還是換了Python,熟練R的小伙伴可以自行根據指南走通需求。

(3)重量級庫來了,Python自帶的Bio包中的Entrez檢索庫,簡直就是我的救星,以下是我的代碼:

注:Entrez在Bio包中,Bio的安裝請移步 https://www.cnblogs.com/xiaolan-Lin/p/14023147.html

import numpy as np from Bio import Medline, Entrez # 一般是通過BioPython的Bio.Entrez模塊訪問Entrez from collections import Counter Entrez.email = '(此處寫你自己在官網注冊的郵箱賬號)' # 應用自己的賬號訪問NCBI數據庫 # 此處需將服務器協議指定為1.0,否則會出現報錯。http.client.IncompleteRead: IncompleteRead(0 bytes read) # 服務器http協議1.0,而python的是1.1,解決辦法就是指定客戶端http協議版本 import http.client http.client.HTTPConnection._http_vsn = 10 http.client.HTTPConnection._http_vsn_str = ’HTTP/1.0’ ''' Entrez 是一個檢索系統,可以用其訪問NCBI數據庫,比如說PubMed,GenBank,GEO等。 獲得有關 global PBDE 的所有文獻的PubMed IDs ''' # handle_0 = Entrez.esearch(db='pubmed', term='drug therapy[Subheading] AND adverse effects[Subheading] AND humans[MeSH Terms]', retmax=306431) handle_0 = Entrez.esearch(db='pubmed', term='drug therapy[MeSH Subheading] AND adverse effects[MeSH Subheading] AND humans[MeSH Terms] AND (2000/01/01[Date - Publication] : 2021/12/31[Date - Publication])', ptyp='Review', usehistory='y', retmax=306431) record = Entrez.read(handle_0) # 獲取檢索條件的所有文獻 idlist = record['IdList'] # 提取出文獻id print ('Total: ', record['Count']) No_Papers = len(idlist) # 共306431篇文獻 2000-01-01:2021-12-31 webenv = record[’WebEnv’] query_key = record[’QueryKey’] total = No_Papers step = 1300 print('Result items:', total) with open('./Data_PubMed/PBDE1.txt', ’w’) as f: for start in range(0, total, step): print('Download record %i to %i' % (start + 1, int(start + step))) handle_1 = Entrez.efetch(db='pubmed', retstart=start, rettype='medline', retmode='text', retmax=step, webenv=webenv, query_key=query_key) # 獲取上述所有文獻的PubMed IDs records = Medline.parse(handle_1) records = list(records) # 將迭代器轉換至列表(list) for index in np.arange(len(records)): id = records[index].get('PMID', '?') title = records[index].get('TI', '?') title = title.replace(’[’, ’’).replace(’].’, ’’) # 若提取的標題出現[].符號,則去除 abstract = records[index].get('AB', '?') f.write(id) f.write('n') f.write(title) f.write('n') f.write(abstract) f.write('n')

話不多說,結果跑出來了我真的很快樂~

Python 利用Entrez庫篩選下載PubMed文獻摘要的示例

最后的結果是存放在txt文件中,大伙兒根據自己的需求改變代碼所需字段啊。

現在我來解釋一下,我貼上的這串代碼的實現原理,首先是通過Entrez檢索到符合我篩選條件的文獻,里邊的限制條件包括了幾個詞匯匹配以及時間限制,時間我限制在了2000年1月1日到2021年的12月31日(這里的時間我選用的是Date - Publication,時間選取Date - Completion、Date - Modification還是Date - Publication其實還是有爭議的,大家自行考慮選取)。

Entrez.esearch的作用就是用來檢索的,里邊的參數db指向你要檢索的數據庫,代碼中的注釋也寫了,Entrez作為一個接口檢索,除了能夠檢索PubMed中的文獻,也能去到別的數據庫檢索文獻;term是寫你的篩選語句,注意你寫的檢索語句不能帶有引號,單引號也不行,否則會檢索不到,如果不知道檢索語句怎么寫,或者是不知道字段是否被定義,可以在官網的檢索那里https://pubmed.ncbi.nlm.nih.gov/advanced/選擇字段輸入內容自動生成query,但是生成的語句是不太智能的,會有很多括號是你不需要的,自己寫代碼的時候要適當去掉;ptyp我這里用的是Review,usehistory是y,意思是后邊我的檢索要記住這個語句,根據歷史查詢來檢索;retmax如果不進行設置的話,默認給你的最大數據量好像是只有1000,我要的檢索內容是超過這個值的,因此我需要自定義檢索的數量。

Entrez.read是對Entrez.esearch檢索到的內容進行讀取,里邊包含了9種元素,我們主要是想從中得到文獻的id號,只有拿到了文獻的id號,我們后面進行摘要的提取才能準確定位。

Python 利用Entrez庫篩選下載PubMed文獻摘要的示例

最后是循環當中步長的設置,這里就要根據自己的需求來定義了,包括內容的提取,因為我只需要PMID、標題(TI)、摘要(AB),所以我就沒有加載別的內容進來,這里也有一點要注意,標題下載下來是大部分帶有[ ].的,方便操作我直接就在下載的時候給去除了,這也是上面replace代碼的由來。

附上我參考的鏈接,如果我這篇文章解決不了你的問題,那么希望下面的渠道能夠幫助到你

https://zhuanlan.zhihu.com/p/54611852

https://zhuanlan.zhihu.com/p/262957260

以上就是Python 利用Entrez庫篩選下載PubMed文獻摘要的示例的詳細內容,更多關于Python Entrez庫下載PubMed文獻的資料請關注好吧啦網其它相關文章!

標簽: Python 編程
相關文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
在线精品福利| 精品国产亚洲一区二区三区大结局| 麻豆精品蜜桃视频网站| 久久精品资源| 亚洲女同av| 日韩视频网站在线观看| 日韩一级欧洲| 国产精品一区亚洲| 最新中文字幕在线播放| 欧美中文一区二区| 中文字幕av一区二区三区人| 欧美日本久久| 国产精品a级| 成人av动漫在线观看| 中文一区一区三区免费在线观| 欧美永久精品| 91精品久久久久久久久久不卡| 蜜臀精品一区二区三区在线观看| 国产日本精品| 久久国产亚洲| 国产免费av国片精品草莓男男| 成人精品亚洲| 国产精品v亚洲精品v日韩精品| 宅男在线一区| 国产成人精品亚洲线观看| 蜜桃久久av| 国产精品一区二区三区av麻| 国产成人精品福利| 日本欧美大码aⅴ在线播放| 999国产精品999久久久久久| 国产精品久一| 亚洲三级网站| 国产在线成人| 国产白浆在线免费观看| 欧美一级二区| 日韩激情av在线| 亚洲欧美视频| 天堂日韩电影| 国产精品13p| 欧美91在线| 国产欧美日韩精品一区二区三区 | 国产精品久久久一区二区| 综合国产在线| 另类激情亚洲| 日本精品影院| 伊人久久婷婷| 日韩不卡手机在线v区| 成人日韩精品| 成人亚洲欧美| 麻豆国产欧美日韩综合精品二区| 亚洲字幕久久| 亚洲一区二区三区久久久| 午夜久久一区| 精品一区在线| 视频福利一区| 国内精品伊人| 国产精品日韩精品在线播放| 日韩欧乱色一区二区三区在线| 亚洲精品乱码| 日韩精品欧美大片| 日韩 欧美一区二区三区| 偷拍亚洲精品| 日韩高清在线观看一区二区| 日韩av二区在线播放| 国产精品xvideos88| 日产精品一区二区| 国产91一区| 久久夜色精品| 国产精品久久久久久久久久久久久久久 | 亚洲不卡av不卡一区二区| 国产精品一站二站| 日韩电影免费网址| 悠悠资源网久久精品| 中文字幕免费一区二区| 欧美日韩91| 国产a亚洲精品| 亚洲国产综合在线看不卡| 玖玖玖国产精品| 欧美亚洲专区| 久久影视一区| 亚洲网址在线观看| 久久av免费| 欧美日韩国产亚洲一区| 久久激五月天综合精品| 久久婷婷久久| 国产麻豆一区二区三区精品视频| 在线一区视频观看| 人人爱人人干婷婷丁香亚洲| 欧洲在线一区| 国产日韩免费| 亚洲一区二区三区久久久| 亚洲精品在线影院| 中文字幕日韩欧美精品高清在线| 国产在线不卡一区二区三区 | 欧美日韩亚洲一区二区三区在线| 久久久五月天| 国产一区二区三区视频在线| 日本成人在线一区| 老鸭窝亚洲一区二区三区| 欧美成人精品三级网站| 国产精品啊啊啊| 欧美一区免费| 亚洲精品进入| 亚洲一区二区毛片| 久久91导航| 久久亚洲国产精品一区二区| 日韩成人三级| 久久精品国产亚洲aⅴ| 久久国产99| 国产视频亚洲| 好看的亚洲午夜视频在线| av资源亚洲| 97精品国产一区二区三区| 国产精品视频一区二区三区四蜜臂| 黄色亚洲大片免费在线观看| 欧美影院精品| 日韩黄色免费网站| 亚洲ww精品| 日韩国产在线一| 日欧美一区二区| 奇米色欧美一区二区三区| 青草国产精品久久久久久| 日本亚洲欧美天堂免费| 久久在线免费| 91国语精品自产拍| 国产在线看片免费视频在线观看| 高清不卡一区| 麻豆一区二区99久久久久| 国产情侣一区在线| 成人污污视频| 日韩另类视频| 在线综合亚洲| 日韩 欧美一区二区三区| 国产探花一区在线观看| 精品久久精品| 99久久激情| 中文一区一区三区免费在线观| 91成人精品在线| 国产欧美一区二区三区米奇| 国产一区二区精品福利地址| 久久国产直播| 亚洲精品第一| 开心激情综合| 92国产精品| 亚洲天堂日韩在线| 高清久久一区| 蜜臀av一区二区在线免费观看 | 免费在线播放第一区高清av| 97精品在线| 美女精品网站| 国产精品99一区二区三| 男人的天堂久久精品| 久久国产视频网| 美女福利一区二区三区| 亚州av一区| 热三久草你在线| 日本vs亚洲vs韩国一区三区二区| 国产一区二区三区四区五区| 秋霞影视一区二区三区| 亚洲精品乱码| 色婷婷精品视频| 欧美国产专区| 亚洲综合色婷婷在线观看| 国产伦久视频在线观看| 日韩高清欧美激情| 99亚洲精品| 久久精品国语| 国产精品宾馆| 精品视频在线观看网站| 亚洲精品一级| 久久中文字幕av| 成人片免费看| a国产在线视频| 国产精品超碰| 国产精区一区二区| 亚久久调教视频| 免费人成网站在线观看欧美高清| 色婷婷亚洲mv天堂mv在影片| 国产精品免费精品自在线观看| 亚洲人成亚洲精品| 丝袜美腿亚洲色图| sm捆绑调教国产免费网站在线观看 | 国产精品一线| 国产精品一页| 欧美日韩夜夜| 国产精品资源| 欧美aaaaaa午夜精品| 国产精品久久久久久久久久久久久久久 | 国产一区二区三区天码| 国产精品最新| 综合一区二区三区| 蜜臀va亚洲va欧美va天堂| 免费观看在线综合| 一区二区三区网站| 日本a口亚洲| 久久精品午夜| 精品丝袜在线| av成人国产| 欧美中文一区| 精品视频91|