python字典的靈活應用-生理信號簡單resample重採樣

python的dict字典

字典dictc初始化使用 {},而非[]

y = {}
t = 0
for i in ['a', 'b', 'c']:
    y[i] = []
    for j in range(len(a)):
        y[i].append([a[j]])      #y[i]  = [a[j]]#
        t = t + 1
y

這是一個重採樣的生理信號程序段

已讀取的mat文件中生理信號400 Hz重排爲200 Hz.經過驗證,重排成功,開心!!!

newdata = {}
for i in ['A','B','C']:
    label = i + '_ECG'  #  A B C 三類數據
    newdata[label] = []
    for j in range(10):  
        #print(label)
        #print(data[label])
        ecg400 = []
        #這裏需要把矩陣轉置
        ecg400 = list(data[label].T[j])   # ecg400 = data[label][j]  'numpy.ndarray' object is not callable
        #print(ecg400)
        ecg200 = []
        #print('400hz點數')
        #print(len(ecg400))
        for k in range(len(ecg400)):   #400 Hz信號保留奇數位值,重新採樣爲200 Hz.
            if k%2 == 0:       #  if ecg400(k)%2 == 0:  'list' object is not callable. python和Matlab不同,[]和()做下標    #if ecg400[k]%2 == 0:
                ecg200.append(ecg400[k])
            else:
                pass
                #print(ecg400[k])
        #print(len(ecg200))
        newdata[label].append(ecg200)   
        
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章