def __init__(self, nombre, dias=False, f_sueno=True, f_sedentario=True, f_ligero=True, f_moderado=True): csv = np.genfromtxt(open(nombre, 'r'), delimiter="," , names=True) #self.nomCols = self.csv.dtype.names #self.nparams = len(self.nomCols) sueno = csv['Sueño'.encode('iso8859-15')] clasifSueno = csv['Clasificaciones_del_sueño'.encode('iso8859-15')] flujo = csv['Flujo_térmico__media'.encode('iso8859-15')] temp = csv['Temp_cerca_del_cuerpo__media'] tiempo = csv['Time'] / 1000 actli = csv['Ligera'] actsd = csv['Sedentaria'] actmd = csv['Moderada'] consm = csv['Gasto_energético'.encode('iso8859-15')] acltrans = csv['Acel_transversal__picos'] self.datos_total = Datos(sueno, clasifSueno, flujo, temp, tiempo, actli, actsd, actmd, consm, acltrans) self.selep_completo = cachitos.selEpisodio(self.datos_total, f_sueno, f_sedentario, f_ligero, f_moderado) if(dias): datos_dias = self.datos_total.creaDias() self.selep_dias = [] for i in datos_dias: self.selep_dias.append(cachitos.selEpisodio(i, f_sueno, f_sedentario, f_ligero, f_moderado)) if(DEBUG): if(dias): print len(datos_dias) for i in datos_dias: print "ini", i.tiempo[0], "fin", i.tiempo[-1]
def loadData(self): if(DEBUG): fname = '../data.csv' else: fname = QtGui.QFileDialog.getOpenFileName(self, 'Open file') print "Abriendo fichero ", fname csv = lf.LectorFichero(fname).getDatos() selep = cachitos.selEpisodio(csv) return selep
def __init__(self, filename=''): self.csv = lf.LectorFichero(filename).getDatos() selep = selEpisodio(self.csv, sedentario=False, ligero=False, moderado=False).epFiltro self.eps_sueno= [] for i in selep: self.eps_sueno.append(self.initEpisodio(i))
def loadData(self): if PRUEBAS: fname = "../data.csv" else: fname = QtGui.QFileDialog.getOpenFileName(self, "Open file") print "Abriendo fichero ", fname self.setWindowTitle("Estudio de sueños (" + fname + ")") csv_dias = lf.LectorFichero(fname).getDatosDias() self.epsDias = [] for i in csv_dias: self.epsDias.append(cachitos.selEpisodio(i)) print len(self.epsDias), "dias" self.panel = PanelConsumo( self.epsDias, self.layout_diario, self.layout_dia_izq, self.layout_dia_der, self.cbx_izq, self.cbx_der, self.lbl_izq, self.lbl_der, ) """
def __init__(self): super(Main, self).__init__() self.setupUi(self) self.selep = cachitos.selEpisodio("../data.csv", dias=True) self.__initCombobox__() self.drawActividadesPie() self.drawConsumosPie() self.drawRatioBar()
def loadData(self): if(PRUEBAS): fname = '../data.csv' else: fname = QtGui.QFileDialog.getOpenFileName(self, 'Open file') print "Abriendo fichero ", fname csv = lf.LectorFichero(fname).getDatos() self.selep = cachitos.selEpisodio(csv, sedentario=False, ligero=False, moderado=False) self.setWindowTitle('Estudio de sueños (' + fname +')') self.initTabs()
def loadData(self): if PRUEBAS: fname = "../data.csv" else: fname = QtGui.QFileDialog.getOpenFileName(self, "Open file") print "Abriendo fichero ", fname self.csv = lf.LectorFichero(fname) self.selep = cachitos.selEpisodio(self.csv.getDatos(), sedentario=False, ligero=False, moderado=False) self.setWindowTitle("Estudio de sueños (" + fname + ")") self.initTabs()
def loadData(self): def updateUI(): print "Actualizando interfaz" #idx = int(self.cbx1.currentText()[5]) #idx = self.getCbxIdx() idx = self.cbx1.currentIndex() self.plotGraph(self.fig1_var1, self.selep.epFiltro[idx].tiempo, self.selep.epFiltro[idx].temp, temperatura=True) self.plotGraph(self.fig1_var2, self.selep.epFiltro[idx].tiempo, self.selep.epFiltro[idx].flujo, flujo=True) self.plotGraph(self.fig2_var1, self.selep.epFiltro[idx].tiempo, self.selep.epFiltro[idx].temp, temperatura=True) self.plotGraph(self.fig2_var2, self.selep.epFiltro[idx].tiempo, self.selep.epFiltro[idx].flujo, flujo=True) if(DEBUG): fname = '../data.csv' else: fname = QtGui.QFileDialog.getOpenFileName(self, 'Open file') print "Abriendo fichero ", fname self.selep = cachitos.selEpisodio(fname, sedentario=False, ligero=False, moderado=False) self.configureComboBox() updateUI()
def initTabs(self): self.tabs = [] self.tabs.append( PanelSueno( self.selep, self.plotLayoutUp, self.plotLayoutBot, self.cbx1, self.cbx2, self.rbTemperatura, self.rbConsumo, self.lbl1, self.lbl2, self.tableLayout, self.dendrogramLayout, ) ) sel2 = copy(self.selep) sel2.update(sNocturno=False, sedentario=False, ligero=False, moderado=False) # self.selep.update(sNocturno=False, sedentario=False, ligero=False, moderado=False) self.tabs.append( PanelSueno( sel2, self.plotLayoutUpSiestas, self.plotLayoutBotSiestas, self.cbx1Siestas, self.cbx2Siestas, self.rbTemperaturaSiestas, self.rbConsumoSiestas, self.lbl1Siestas, self.lbl2Siestas, self.tableLayoutSiestas, self.dendrogramLayoutSiestas, ) ) # self.selep.update(sDiurno=False, sedentario=False, ligero=False, moderado=False) sel3 = copy(self.selep) sel3.update(sDiurno=False, sedentario=False, ligero=False, moderado=False) self.tabs.append( PanelSueno( sel3, self.plotLayoutUpSuenos, self.plotLayoutBotSuenos, self.cbx1Suenos, self.cbx2Suenos, self.rbTemperaturaSuenos, self.rbConsumoSuenos, self.lbl1Suenos, self.lbl2Suenos, self.tableLayoutSuenos, self.dendrogramLayoutSuenos, ) ) epsDias = [] for i in self.csv.getDatosDias(): epsDias.append(cachitos.selEpisodio(i)) self.tabs.append( PanelConsumo( epsDias, self.layout_diario, self.layout_dia_izq, self.layout_dia_der, self.cbx_izq, self.cbx_der, self.lbl_izq, self.lbl_der, ) )
from sklearn import preprocessing from scipy.spatial.distance import euclidean from fastdtw import fastdtw import scipy.spatial.distance as ssd import math import mlpy #Representa un episodio de sueño mediante las series temporales de flujo y temperatura class Individuo: def __init__(self, tiempo, temperatura, flujo): self.tiempo = tiempo self.stt = temperatura self.stf = flujo #Cargar datos y filtrar por episodios de sueño sel = cachitos.selEpisodio("../data.csv") sel.filSueno = True sel.filSedentario = False sel.filLigero = False sel.filModerado = False sel.update() print "Normalizar", len(sel.epFiltro), "episodios de sueño" # Normalizar por estandarización cada episodio de sueño (temperatura y flujo) eps_sueno = [] for i in sel.epFiltro: a = preprocessing.scale(i.temp, copy=False) b = preprocessing.scale(i.flujo, copy=False) eps_sueno.append(Individuo(i.tiempo, a, b))
def loadData(self): fname = QtGui.QFileDialog.getOpenFileName(self, 'Open file') print "Abriendo fichero ", fname selep = cachitos.selEpisodio(fname) return selep