<jupyter_start><jupyter_text>Actividad II Ejercicio 1<jupyter_code>path = '/Users/<NAME>/Desktop/MCIB/MCIB-19-P/data/Señales adquirid/'
fname = 'Med4.txt'
data = np.loadtxt(path+fname,delimiter='\t',dtype='str')

t=data[ : , 0]
SO2=data[:,1]
RESP=data[:,2]
EMG=data[:,3]
PUL=data[:,4]
ECG=data[:,5]

t    = t.astype('float')*60
SO2  = SO2.astype('float')
RESP = RESP.astype('float')
EMG  = EMG.astype('float')
PUL  = PUL.astype('float')
ECG  = ECG.astype('float')<jupyter_output><empty_output><jupyter_text>IMPLEMENTACIÓN  Eleccion de la mejor ventana<jupyter_code>W1=windows(SO2)
W1=windows(ECG)
W1=windows(EMG)
W1=windows(PUL)
W1=windows(RESP)
path = '/Users/<NAME>/Desktop/MCIB/MCIB-19-P/data/Señales adquirid/'
fname = 'Lect1.txt'
data1 = np.loadtxt(path+fname,delimiter='\t',dtype='str')

t1=data1[:,0]
SO21=data1[:,1]
RESP1=data1[:,2]
EMG1=data1[:,3]
PUL1=data1[:,4]
ECG1=data1[:,5]

t1    = t1.astype('float')*60
SO21  = SO2.astype('float')
RESP1 = RESP.astype('float')
EMG1  = EMG.astype('float')
PUL1  = PUL.astype('float')
ECG1  = ECG.astype('float')

plt.figure(figsize = (15, 3)) 
plt.subplot(1,2,1)
plt.title("SO2, Ejercicio") 
PS1= PSD (SO2)
plt.subplot(1,2,2)
PS11= PSD (SO21)
plt.title("SO2, Lectura") 

plt.figure(figsize = (15, 3))
plt.subplot(1,2,1)
PS2= PSD (EMG)
plt.title("EMG, Ejercicio") 
plt.subplot(1,2,2)
PS21= PSD (EMG1)
plt.title("EMG, Lectura") 

plt.figure(figsize = (15, 3))
plt.subplot(1,2,1)
PS3= PSD (PUL)
plt.title("PUL, Ejercicio") 
plt.subplot(1,2,2)
PS31= PSD (PUL1)
plt.title("PUL, Lectura") 

plt.figure(figsize = (15, 3))
plt.subplot(1,2,1)
PS4= PSD (RESP)
plt.title("RESP, Ejercicio") 
plt.subplot(1,2,2)
PS41= PSD (RESP1)
plt.title("RESP, Lectura") 

plt.figure(figsize = (15, 3))
plt.subplot(1,2,1)
PS5= PSD (ECG)
plt.title("ECG, Ejercicio") 
plt.subplot(1,2,2)
PS51= PSD (ECG1)
plt.title("ECG, Lectura") 
plt.show()<jupyter_output><empty_output><jupyter_text>Ejercicio 2<jupyter_code>def filt_but(s, w, ord = 5):
    w = w/500
    [b,a] =butter(ord, w, 'low')
    x = filtfilt(b, a, s)
    return (x,b,a)
# Filtro notch para quitar el ruido de 60 Hz en algunas señales
[b_n, a_n] = signal.iirnotch(60.0, 70.0, 1000)
plt.figure(figsize = (25, 4))
Respuesta(b_n,a_n) 

#SO2
[SO2_f, b, a]= filt_but(SO2, 10)
plt.figure(figsize = (25, 4))
plt.subplot(1,2,1)
plt.plot(t[40000:55000], SO2[40000:55000],color = 'red', label="Señal sin filtrar")
plt.plot(t[40000:55000], SO2_f[40000:55000],color = 'green', label="Señal filtrada")
plt.legend(loc='best')
plt.title("Señal de saturación de O2, Ejercicio") 
plt.grid(True)
plt.subplot(1,4,3)
Respuesta(b,a) 

#RESP
[RESP_f, b, a]= filt_but(RESP, 10)
plt.figure(figsize = (25, 4))
plt.subplot(1,2,1)
plt.plot(t[40000:55000], RESP[40000:55000],color = 'red', label="Señal sin filtrar")
plt.plot(t[40000:55000], RESP_f[40000:55000],color = 'green', label="Señal filtrada")
plt.legend(loc='best')
plt.title("Señal de respiración, Ejercicio") 
plt.grid(True)
plt.subplot(1,4,3)
Respuesta(b,a) 

#EMG
EMG_n= filtfilt(b_n, a_n, EMG)
[EMG_f, b, a]= filt_but(EMG_n, 150)
plt.figure(figsize = (25, 4))
plt.subplot(1,2,1)
plt.plot(t[40000:55000], EMG[40000:55000],color = 'red', label="Señal sin filtrar")
plt.plot(t[40000:55000], EMG_f[40000:55000],color = 'green', label="Señal filtrada")
plt.legend(loc='best')
plt.title("Señal de EMG, Ejercicio") 
plt.grid(True)
plt.subplot(1,4,3)
Respuesta(b,a) 

#PUL
[PUL_f, b, a]= filt_but(PUL, 5)
plt.figure(figsize = (25, 4))
plt.subplot(1,2,1)
plt.plot(t[40000:55000], PUL[40000:55000],color = 'red', label="Señal sin filtrar")
plt.plot(t[40000:55000], PUL_f[40000:55000],color = 'green', label="Señal filtrada")
plt.legend(loc='best')
plt.title("Señal de pulso, Ejercicio") 
plt.grid(True)
plt.subplot(1,4,3)
Respuesta(b,a) 

#ECG
ECG_n= filtfilt(b_n, a_n, ECG)
[ECG_f, b, a]= filt_but(ECG_n, 100)
plt.figure(figsize = (25, 4))
plt.subplot(1,2,1)
plt.plot(t[40000:55000], ECG[40000:55000],color = 'red', label="Señal sin filtrar")
plt.plot(t[40000:55000], ECG_f[40000:55000],color = 'green', label="Señal filtrada")
plt.legend(loc='best')
plt.title("Señal de ECG, Ejercicio") 
plt.grid(True)
plt.subplot(1,4,3)
Respuesta(b,a) 
plt.show()<jupyter_output><empty_output><jupyter_text>Ejercicio 3<jupyter_code>#Tendencia ---- Filtrado
from scipy import signal

ECG_ten = ten_lin (ECG, t,1000)
ECG_ten_n= filtfilt(b_n, a_n, ECG_ten)
[ECG_ten_fil, b, a]= filt_but(ECG_ten_n, 100)

# Filtrado ---- Tendencia
ECG_f_n= filtfilt(b_n, a_n, ECG)
[ECG_fil, b1, a1]= filt_but(ECG_f_n, 100)
ECG_fil_ten = ten_lin (ECG_fil, t,1000)

plt.figure(figsize = (15, 4))
plt.plot(t[45000:60000], ECG[45000:60000]+30,color = 'red', label="Señal sin procesar")
plt.plot(t[45000:60000], ECG_ten_fil[45000:60000],color = 'blue', label="Tendencia -> Filtrado")
plt.plot(t[45000:60000], ECG_fil_ten[45000:60000],color = 'green', label="Filtrado -> Tendencia")
plt.legend(loc='best')
plt.title("Señal de EEG, Ejercicio") 
plt.ylim(-5,60)
plt.xlim(45,60)
plt.grid(True)<jupyter_output><empty_output>
{'fraction_non_alphanumeric': 0.20553438941247243, 'fraction_numerical': 0.09925807098455985, 'mean_word_length': 6.6503067484662575, 'pattern_counts': {'":': 0, '<': 19, '<?xml version=': 0, '>': 21, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'chain_length': '4', 'dir': 'jupyter-structured-clean-dedup', 'id': '490268', 'license': 'CC0-1.0', 'n_tokens_mistral': 2820, 'n_tokens_neox': 2464, 'n_words': 394, 'path': 'SRC/Practica2.ipynb', 'repo_name': 'Javarroy/MCIB-19_', 'size': '4999'}