In [2]:
import sqlexperiment as sqle
from sqlexperiment import experimentlog
from sqlexperiment.experimentlog import ExperimentLog
from sqlexperiment import extract
from sqlexperiment import pseudo
import pandas as pd
# log some JSON data
e = ExperimentLog(":memory:", ntp_sync=False)
# now register the user with the database
user = pseudo.get_pseudo()
e.create("USER", name=user, data={"age":30, "leftright":"right"})
e.cd("/Experiment/Condition1")
e.bind("USER",user)
e.log("mouse", data={"x":0, "y":0})
e.log("mouse", data={"x":0, "y":1})
e.log("mouse", data={"x":0, "y":2})
e.cd("/Experiment/Condition2")
e.bind("USER",user)
e.log("mouse", data={"x":0, "y":0})
e.log("mouse", data={"x":0, "y":1})
e.log("mouse", data={"x":0})
e.leave(valid=False)
e.enter('Condition2')
e.log("mouse", data={"x":0, "y":0})
e.log("mouse", data={"x":0, "y":1})
e.log("mouse", data={"x":0}, valid=0)
e.enter('SubconditionA')
e.cd("/Experiment/Condition1")
e.bind("USER",user)
e.log("mouse", data={"x":0, "y":0})
e.log("mouse", data={"x":0, "y":1})
e.log("mouse", data={"x":0, "y":2})
e.cd("/Experiment/Condition2")
e.bind("USER",user)
e.log("mouse", data={"x":0, "y":0})
e.log("mouse", data={"x":0, "y":1})
e.log("mouse", data={"x":0})
e.leave()
e.enter('Condition2')
e.log("mouse", data={"x":0, "y":0})
e.log("mouse", data={"x":0, "y":1})
e.log("mouse", data={"x":0}, valid=0)
e.enter('SubconditionA')
e.end()
In [3]:
meta, bound_ix = extract.meta(e.cursor)
print(extract.meta_dataframe(e.cursor))
In [4]:
df = extract.dump_flat_dataframe(e.cursor)
print(df)
In [5]:
df = extract.dump_dataframe(e.cursor)
In [6]:
import six
In [7]:
session_tree, path_tree = extract.map_children_sessions(e.cursor)
print("\n".join(["%-50s\tTotal logs:%d" % (k,len(v)) for k,v in six.iteritems(path_tree)]))
In [8]:
print(extract.dump_sessions_dataframe(e.cursor))
In [ ]:
In [ ]: