#!/usr/bin/env python # coding: utf-8 # In[ ]: import os import pandas as pd import numpy as np # In[ ]: import re class state_gen_old: """""" def __init__(self,pattern_start,pattern_stop,null_state="Null"): self.previous = null_state self.null_state=null_state self.pattern_start=pattern_start self.pattern_stop=pattern_stop def __call__(self,actual): if(not(pd.isnull(actual))): #Start condition if((re.search(self.pattern_start,actual))!=None): self.previous=actual #End Condition elif((re.search(self.pattern_stop,actual))!=None): self.previous = self.null_state return self.previous class state_gen_new: """""" def __init__(self,pattern_start,pattern_stop,split = False,null_state="Null"): self.previous = null_state self.null_state = null_state self.pattern_start = pattern_start self.pattern_stop = pattern_stop self.split = split def process_state(self,state): if (self.split): #Keep the root of the state (eg. _Y6014 IntervalStart --> _Y6014) state = state.split()[0] return state def __call__(self,actual): if(not(pd.isnull(actual))): #Start condition if((re.search(self.pattern_start,actual))!=None): self.previous = self.process_state(actual) #End Condition elif((re.search(self.pattern_stop,actual))!=None): self.previous = self.null_state return self.previous # In[ ]: path_old= r"C:\Users\jeuux\Desktop\Carrera\MoAI\TFM\AnnotatedData\Accelerometer_Data\Participants\0404b\CompleteData\segments_data.npy" path_new = r"C:\Users\jeuux\Desktop\Carrera\MoAI\TFM\AnnotatedData\FinalDatasets\Participants\0404b\FullDataset\segments_data.npy" # In[ ]: # # df_old = pd.read_csv(path_old) # df_old = pd.read_csv(path_new) # df_new = pd.read_csv(path_new) targets_old = np.load(path_old) targets_new = np.load(path_new) # In[ ]: targets_old[0] == targets_new[0] # In[ ]: targets_old == targets_new # In[ ]: ##get targets and valid intervals generator_target_old=state_gen_old("AG","Behaviour End") df_old["target"]=df_old["Event"].apply(lambda event: generator_target_old(event)) # In[ ]: df_old.target.value_counts() # In[ ]: ##get targets and valid intervals generator_target_new=state_gen_new("AG","Behaviour End") df_new["target"]=df_new["Event"].apply(lambda event: generator_target_new(event)) # In[ ]: df_new.target.value_counts() ==df_old.target.value_counts() # In[ ]: df_new[df_new["Recording timestamp"]==0] # In[ ]: df0_path = r"C:\Users\jeuux\Desktop\Carrera\MoAI\TFM\AnnotatedData\Accelerometer_Data\Participants\0705b\CompleteData\CompleteData_raw_0705b.csv" df1_path = r"C:\Users\jeuux\Desktop\Carrera\MoAI\TFM\AnnotatedData\FinalDatasets\Participants\0705b\FullDataset\FullDataset_raw_0705b.csv" # In[ ]: df0 = pd.read_csv(df0_path) df1 = pd.read_csv(df1_path) # In[ ]: df0[df0["Recording timestamp"]==0] # In[ ]: df1[df1["Recording timestamp"]==0]