PhysioNet是一個由美國國家通用醫(yī)學(xué)科學(xué)院(NIGMS)和國家生物醫(yī)學(xué)成像和生物工程院(NIBIB)共同支持的面向科研人員免費(fèi)提供生理信號庫和其處理工具的一個資源網(wǎng)站或者項目。目前項目內(nèi)容主要分為兩個:PhysioBank和PhysioToolkit,也就是生理信號庫和處理工具箱。
網(wǎng)站:https://physionet.org/
有小伙伴留言說能不能介紹一下WFDB 的python版本的用法,今天我就來講講WFDB for Python.
同一個庫,不管支持什么樣的開發(fā)語言,其功能是不變的。所以Python版的具體功能可以看前面Matlab版的文章。
一、安裝
安裝Pyhton的庫或者包最簡單的就是用pip安裝。沒有pip或者不會的自己上網(wǎng)想辦法吧!pip超級簡單:
>>pip install wfdb
安裝WFDB會涉及到很多其他的Python包,不過不用擔(dān)心,pip方法一并自動安裝了。安裝過程和結(jié)果如下截圖:

第一條紅線是安裝輸入的命令,注意我前面的py - 3 -m對于很多小伙伴來說應(yīng)該是多余的,因為我安裝了兩個版本的python,所以必須在前面指定要安裝WFDB的python版本。第二紅線清楚表明了在安裝WFDB的時候,哪些相關(guān)的的包也被安裝了。
二、嘗鮮
像Matlab版本一樣,WFDB的功能包括從生理庫中讀取生理信號,注釋以及處理等,下面就介紹幾個簡單但使用的函數(shù)。具體的介紹可以查看官方說明網(wǎng)站:
https://wfdb.readthedocs.io/en/latest/
1.獲取PhysioNet所有庫名稱列表:
dbs = wfdb.get_dbs()
print(dbs)

這個列表其實(shí)在網(wǎng)站https://physionet.org/physiobank/database/中也可以查看查看
2.獲取某個數(shù)據(jù)庫的所有信號記錄列表
從第一個數(shù)據(jù)庫列表中我們知道了有個叫做mitdb的庫,也是我們常用的ECG信號庫,所以這里我想獲取他所有信號記錄的列表:
recs_list = wfdb.get_record_list('mitdb')
print(recs_list)

3.下載我們需要的ECG記錄
以上兩個函數(shù)提供了數(shù)據(jù)庫和記錄的信息,但是只是查看,我們要處理的前提還得先獲取某個(某些)記錄。
函數(shù)dl_datanase可以下載我們想要的信號記錄。比如剛剛提到的mitdb庫,我們要下載其中的某些信號怎么辦?
db_dir = 'mitdb'???? #指定數(shù)據(jù)庫,這里是‘mitdb’
dl_dir = 'C:\\Users\zhang\Desktop\Programm_learn\Python\WFDB'? #指定數(shù)據(jù)下載到本地的路徑,注意C:\\是霜斜線
records = ['100','101','102']? #想要的記錄名稱,從上面的列表可以看出,如果全部使用'all',或者省略這個參數(shù),這里我下三個
wfdb.dl_database(db_dir,dl_dir,records) #下載函數(shù)及其參數(shù)
注:程序運(yùn)行沒問題,可是下載一直沒有成功,python一直處于下載狀態(tài)。目前還沒有找到原因,等解決這個問題再寫下一篇!