python实现MIT-BIH数据读取及图形绘制

每条带有一个hea文件及mat文件,mat文件存储了波形信息,而hea文件存储了头信息

以下为matlab实现mat数据转换为txt格式

PATH= 'D:\Data\sample2017\validation'; % path, where data are saved  
PATH1='D:\Data\sample2017\validation\'


PATHmat = strcat(PATH,'\*.mat');
files = dir(PATHmat);%返回文件夹中的所有文
for fileIndex = 1 : 300%length(files)
     DATAFILE = files(fileIndex).name;
     PATHmat = strcat(PATH1,DATAFILE);
 load (PATHmat); %将heart_scale_inst保存到heart_scale_inst.txt文件中
    Nametxt = strcat(PATHmat,'.txt');
    save(Nametxt,'val','-ASCII');
end

python对txt的操作

import pylab
import matplotlib.pyplot as plt
y_List_Init = []
x_List = []

def plotData(X, y):


    pylab.figure(1)

    pylab.plot(X, y, 'rx')
    pylab.xlabel('Population of City in 10,000s')
    pylab.ylabel('Profit in $10,000s')

    pylab.show()  # 让绘制的图像在屏幕上显示出来

with open('D:/MIT/A00001.txt') as f:
    data=f.readlines()
    for line in f.readlines():
        line.rstrip('\n')
y_List_Init = data[0].split()

#纵坐标和横坐赋值
y_List = [float(x) for x in y_List_Init]#将txt读取的波形值转换为float类型存入数组
x_list = [i for i in range(len(y_List))]#横坐标的个数依据纵坐标个数而定

print(y_List)
print(x_list)
print(len(y_List))#有多少个Y记录
print(len(x_list))#有多少个X记录

plt.plot(y_List)
plt.show()


A00001.txt文本是经过matlab转换而来。

你可能感兴趣的:(机器学习)