Files
ECG_by_Diffenert_CNN_Test/ECG_read_by_wfdb.py
T
weiyuqing 10e056f20d Create ECG_read_by_wfdb.py
This .py use wfdb to read ECG data.
2023-03-13 19:55:39 +08:00

39 lines
1.1 KiB
Python

import wfdb
import numpy as np
def getDataset(number, X_data):
# get ECG from mit-bih-arrhythmia-database-1.0.0
print("get data:" + number + " ECG")
record = wfdb.rdrecord('./mit-bih-arrhythmia-database-1.0.0/' + number, channel_names=['MLII'])
data = record.p_signal.flatten()
# get R sample and symbol
annotation = wfdb.rdann('mit-bih-arrhythmia-database-1.0.0/' + number, 'atr')
Rlocatation = annotation.sample
Rclass = annotation.symbol
X_data.append(data)
return
def loadData():
numberSet = ['100', '101', '103', '105', '106', '107', '108', '109', '111', '112', '113', '114', '115',
'116', '117', '119', '121', '122', '123', '124', '200', '201', '202', '203', '205', '208',
'210', '212', '213', '214', '215', '217', '219', '220', '221', '222', '223', '228', '230',
'231', '232', '233', '234']
dataSet = []
for n in numberSet:
getDataset(n, dataSet)
print(dataSet)
return dataSet
def main():
dataSet=loadData()
dataSet=np.array(dataSet)
print(dataSet.shape)
print("get ECG data")
if __name__ == '__main__':
main()