from nems.recording import load_recording modelname = 'dprime_jk10_zscore_nclvz_fixtdr2' recache = False site = 'TAR010c' #'DRX008b.e1:64' #'TAR010c' #'DRX007a.e65:128' batch = 289 for site in HIGHR_SITES: if 'BOL' in site: batch = 294 pass else: batch = 289 # get decoding results loader = decoding.DecodingResults() fn = os.path.join(DPRIME_DIR, site, modelname + '_TDR.pickle') results = loader.load_results(fn, cache_path=CACHE_PATH, recache=recache) df = results.numeric_results.loc[results.evoked_stimulus_pairs] df['noiseAlign'] = results.slice_array_results( 'cos_dU_evec_test', results.evoked_stimulus_pairs, 2, idx=(0, 0))[0] X, sp_bins, X_pup, pup_mask, epochs = decoding.load_site( site=site, batch=batch, return_epoch_list=True) ncells = X.shape[0] nreps = X.shape[1] nstim = X.shape[2] nbins = X.shape[3]
pr = pupil_range get_mean = lambda x: (pr[pr.stim == x[0]]['range'] + pr[pr.stim == x[1]][ 'range']) / 2 pr_range = combos.apply(get_mean) tdr_results['mean_pupil_range'] = pr_range.values # convert to correct dtypes tdr_results = decoding.cast_dtypes(tdr_results) if do_PCA: pca_results = decoding.cast_dtypes(pca_results) if do_pls: pls_results = decoding.cast_dtypes(pls_results) # collapse over results to save disk space by packing into "DecodingResults object" log.info("Compressing results into DecodingResults object... ") tdr_results = decoding.DecodingResults(tdr_results, pupil_range=pupil_range) if do_PCA: pca_results = decoding.DecodingResults(pca_results, pupil_range=pupil_range) if do_pls: pls_results = decoding.DecodingResults(pls_results, pupil_range=pupil_range) if meta is not None: if 'mask_bins' in meta.keys(): tdr_results.meta['mask_bins'] = meta['mask_bins'] # save results modelname = modelname.replace('*', '_') log.info("Saving results to {}".format(os.path.join(path, str(batch))))