def fit_sx(mname, project='behav', regress=False): pth=find_path() data=defmod.find_data(mname, project) grp_dict={}; subj_params=[]; aic_list=[]; bic_list=[]; dic_list=[]; ic_dict={} for subj_idx, subj_data in data.groupby('subj_idx'): m_sx=defmod.define_sxbayes(mname, subj_data, project=project, regress=regress) m_sx.sample(1000, burn=500, dbname=str(subj_idx)+"_"+mname+'_traces.db', db='pickle') sx_df=parse.stats_df(m_sx) sx_df=sx_df.drop("sub", axis=1) sx_df['sub']=[subj_idx]*len(sx_df) subj_params.append(sx_df) aic_list.append(aic(m_sx)); bic_list.append(bic(m_sx)); dic_list.append(m_sx.dic) allsx_df=pd.concat(subj_params) allsx_df.to_csv(mname+"_SxStats.csv", index=False) ic_dict={'aic':aic_list, 'bic':bic_list, 'dic':dic_list} ic_df=pd.DataFrame(ic_dict) ic_df.to_csv(mname+"_IC_Rank.csv") return allsx_df
def load_traces(m, mname, project='imaging'): pth=find_path() if project=='behav': m.load_db(pth+"beh_hddm/"+mname+"/"+mname+"_traces.db", db='pickle') else: m.load_db(pth+"img_hddm/"+mname+"/"+mname+"_traces.db", db='pickle') return m
def find_data(mname, project='imaging'): pth=find_path() if project=='behav': data=pd.read_csv(pth+"beh_hddm/allsx_feat.csv") else: data=pd.read_csv(pth+"img_hddm/allsx_ewma.csv") return data
def find_data(mname, project='imaging'): pth = find_path() if project == 'behav': data = pd.read_csv(pth + "beh_hddm/allsx_feat.csv") else: data = pd.read_csv(pth + "img_hddm/allsx_ewma.csv") return data
def load_traces(m, mname, project='imaging'): pth = find_path() if project == 'behav': m.load_db(pth + "beh_hddm/" + mname + "/" + mname + "_traces.db", db='pickle') else: m.load_db(pth + "img_hddm/" + mname + "/" + mname + "_traces.db", db='pickle') return m
def fit_sx(mname, project='behav', regress=False): pth = find_path() data = defmod.find_data(mname, project) grp_dict = {} subj_params = [] aic_list = [] bic_list = [] dic_list = [] ic_dict = {} for subj_idx, subj_data in data.groupby('subj_idx'): m_sx = defmod.define_sxbayes(mname, subj_data, project=project, regress=regress) m_sx.sample(1000, burn=500, dbname=str(subj_idx) + "_" + mname + '_traces.db', db='pickle') sx_df = parse.stats_df(m_sx) sx_df = sx_df.drop("sub", axis=1) sx_df['sub'] = [subj_idx] * len(sx_df) subj_params.append(sx_df) aic_list.append(aic(m_sx)) bic_list.append(bic(m_sx)) dic_list.append(m_sx.dic) allsx_df = pd.concat(subj_params) allsx_df.to_csv(mname + "_SxStats.csv", index=False) ic_dict = {'aic': aic_list, 'bic': bic_list, 'dic': dic_list} ic_df = pd.DataFrame(ic_dict) ic_df.to_csv(mname + "_IC_Rank.csv") return allsx_df
#!/usr/bin/env python from __future__ import division import hddm import pandas as pd import numpy as np from patsy import dmatrix import os from mydata.munge import find_path pth=find_path() data=pd.read_csv(pth+"/beh_hddm/allsx_feat.csv") def z_link_func(x, data=data): stim = (np.asarray(dmatrix('0 + C(s,[[1],[-1]])', {'s':data.stimulus.ix[x.index]}))) return 1 / (1 + np.exp(-(x * stim))) def v_link_func(x, data=data): stim = (np.asarray(dmatrix('0 + C(s,[[1],[-1]])', {'s':data.stimulus.ix[x.index]}))) return x * stim def define_model(mname, project='imaging', regress=False): check_model(mname) data=find_data(mname, project) if project=='imaging': intercept="b50N" else:
#!/usr/bin/env python from __future__ import division import hddm import pandas as pd import numpy as np from patsy import dmatrix import os from mydata.munge import find_path pth = find_path() data = pd.read_csv(pth + "/beh_hddm/allsx_feat.csv") def z_link_func(x, data=data): stim = (np.asarray( dmatrix('0 + C(s,[[1],[-1]])', {'s': data.stimulus.ix[x.index]}))) return 1 / (1 + np.exp(-(x * stim))) def v_link_func(x, data=data): stim = (np.asarray( dmatrix('0 + C(s,[[1],[-1]])', {'s': data.stimulus.ix[x.index]}))) return x * stim def define_model(mname, project='imaging', regress=False): check_model(mname) data = find_data(mname, project)