예제 #1
0
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', {
예제 #3
0
 def read(self, ds_uri):
     self.ds = SilentDF(pd.read_csv(ds_uri))
     return self
예제 #4
0
 def val_switch(v):
     if isinstance(v, pd.DataFrame) is True or isinstance(v,
                                                          SilentDF) is True:
         return SilentDF(v)
     else:
         return v.x
예제 #5
0
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(
예제 #6
0
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