def val_switch(v): if isinstance(v, DataFrame) is True: return SilentDF(v) else: return v
from cadCAD.configuration import append_configs from cadCAD.configuration.utils import config_sim import pandas as pd from cadCAD.utils import SilentDF df = SilentDF( pd.read_csv('/DiffyQ-SimCAD/simulations/external_data/output.csv')) def query(s, df): return df[(df['run'] == s['run']) & (df['substep'] == s['substep']) & (df['timestep'] == s['timestep'])].drop( columns=['run', 'substep', "timestep"]) def p1(_g, substep, sL, s): result_dict = query(s, df).to_dict() del result_dict["ds3"] return {k: list(v.values()).pop() for k, v in result_dict.items()} def p2(_g, substep, sL, s): result_dict = query(s, df).to_dict() del result_dict["ds1"], result_dict["ds2"] return {k: list(v.values()).pop() for k, v in result_dict.items()} # integrate_ext_dataset def integrate_ext_dataset(_g, step, sL, s, _input): result_dict = query(s, df).to_dict() return 'external_data', {
def read(self, ds_uri): self.ds = SilentDF(pd.read_csv(ds_uri)) return self
def val_switch(v): if isinstance(v, pd.DataFrame) is True or isinstance(v, SilentDF) is True: return SilentDF(v) else: return v.x
import pandas as pd import pprint as pp # from fn.func import curried from datetime import timedelta from cadCAD.utils import SilentDF #, val_switch from cadCAD.configuration import append_configs from cadCAD.configuration.utils import time_step, config_sim from cadCAD.configuration.utils.userDefinedObject import udoPipe, UDO DF = SilentDF(pd.read_csv('simulations/external_data/output.csv')) class udoExample(object): def __init__(self, x, dataset=None): self.x = x self.mem_id = str(hex(id(self))) self.ds = dataset # for setting ds initially or querying self.perception = {} def anon(self, f): return f(self) def updateX(self): self.x += 1 return self def perceive(self, s): self.perception = self.ds[(self.ds['run'] == s['run']) & (self.ds['substep'] == s['substep']) & (self.ds['timestep'] == s['timestep'])].drop(
from cadCAD.configuration import append_configs from cadCAD.configuration.utils import config_sim import pandas as pd from cadCAD.utils import SilentDF df = SilentDF( pd.read_csv( '/Users/jjodesty/Projects/DiffyQ-SimCAD/simulations/external_data/output.csv' )) def query(s, df): return df[(df['run'] == s['run']) & (df['substep'] == s['substep']) & (df['timestep'] == s['timestep'])].drop( columns=['run', 'substep', "timestep"]) def p1(_g, substep, sL, s, **kwargs): result_dict = query(s, df).to_dict() del result_dict["ds3"] return {k: list(v.values()).pop() for k, v in result_dict.items()} def p2(_g, substep, sL, s, **kwargs): result_dict = query(s, df).to_dict() del result_dict["ds1"], result_dict["ds2"] return {k: list(v.values()).pop() for k, v in result_dict.items()} # ToDo: SilentDF(df) wont work #integrate_ext_dataset