From 23cee9eae4e023a3374ea26ad11940aebe92594f Mon Sep 17 00:00:00 2001 From: Théo de la Hogue Date: Fri, 20 May 2022 11:08:20 +0200 Subject: Removing DictObject class. --- src/argaze/DataStructures.py | 32 ++++++-------------------------- 1 file changed, 6 insertions(+), 26 deletions(-) diff --git a/src/argaze/DataStructures.py b/src/argaze/DataStructures.py index 8517378..ead5c48 100644 --- a/src/argaze/DataStructures.py +++ b/src/argaze/DataStructures.py @@ -5,31 +5,6 @@ import json import bisect import pandas -class DictObject(): - """Convert dictionnary into object""" - - def __init__(self, object_type = str, **dictionnary): - self.__dict__.update(dictionnary) - self.__type = object_type - - def __getitem__(self, key): - return self.__dict__[key] - - def __str__(self): - return json.dumps({key: self.__dict__[key] for key in self.__dict__.keys()}, default = vars) - - def get_type(self): - return self.__type - - def keys(self): - return list(self.__dict__.keys())[:-1] - - def append(self, key, value): - __type_key = list(self.__dict__.keys())[-1] - __type_value = self.__dict__.pop(__type_key) - self.__dict__.update({key:value}) - self.__dict__[__type_key] = __type_value - class TimeStampedBuffer(collections.OrderedDict): """Ordered dictionary to handle timestamped data. ``` @@ -107,11 +82,16 @@ class TimeStampedBuffer(collections.OrderedDict): except: raise RuntimeError(f'Can\' write {filepath}') - def as_dataframe(self, exclude=[]): + def as_dataframe(self, exclude=[], split={}): """Convert buffer as pandas dataframe.""" df = pandas.DataFrame.from_dict(self.values()) df.drop(exclude, inplace=True, axis=True) + + for key, columns in split.items(): + df[columns] = pandas.DataFrame(df[key].tolist(), index=df.index) + df.drop(key, inplace=True, axis=True) + df['timestamp'] = self.keys() df.set_index('timestamp', inplace=True) -- cgit v1.1