Example #1
0
 def make_stim_df(self):
     stim_df = fg.load_visual_stimuli(self.pkl)
     stim_df['jcam_onframe'] = get_jcam_index(self.session.timeline.times,
                                              stim_df['frame'])
     stim_df['jcam_offframe'] = get_jcam_index(self.session.timeline.times,
                                               stim_df['end_frame'])
     stim_df['image_id'] = None
     if stim_df['image_name'][0] is not None:
         stim_df['image_id'] = stim_df['image_name']
     else:
         stim_df['image_id'] = stim_df['orientation']
     self.stim_df = stim_df
     return self.stim_df
Example #2
0
 def make_change_df(self):
     change_df = pd.DataFrame()
     change_df['frame'] = self.trials_df['change_frame'].dropna()
     change_df['jcam_changeframe'] = get_jcam_index(
         self.session.timeline.times, change_df['frame'])
     self.change_df = change_df
     return self.change_df
Example #3
0
 def make_trials_df(self):
     trials_df = beh_pkl_path_to_df(self.pkl_path)
     trials_df['jcam_startframe'] = get_jcam_index(
         self.session.timeline.times, trials_df['startframe'])
     for idx in trials_df.index:
         if trials_df.at[idx, 'trial_type'] == 'autorewarded':
             trials_df.at[idx, 'response_type'] = 'AUTOREWARDED'
     self.trials_df = trials_df
     return self.trials_df
Example #4
0
	def get_session_dataframe(self, date, path, session_manifest, save=False):
		if (date == self.date):
			try:
				session = self.session
			except AttributeError:
				session = self.get_IB_session_object(date, path, session_manifest)
		else:
			session = self.get_IB_session_object(date, path, session_manifest)
		
		pkl_path = os.path.join(self.path, self.session_manifest['behavior_pkl']) 
		df = beh_pkl_path_to_df(pkl_path)
		df_jcam = add_jcam_to_df(df, session)
		running_speed = load_running_speed(pd.read_pickle(pkl_path))

		df_jcam['lick_frames_jcam'] = None
		df_jcam['run_speeds'] = None
		for idx in df_jcam.index:
			start_f = df_jcam.at[idx, 'startframe']
			try:
				end_f = df_jcam.at[idx+1, 'startframe']
			except:
				end_f = df_jcam.startframe.iloc[-1]
			speed = list(running_speed[running_speed['frame'].between(start_f-1, end_f, inclusive=False)].speed)
			df_jcam.at[idx, 'run_speeds'] = speed

			if len(df_jcam.iloc[idx]['lick_frames']) > 0:
				lick_frames = df_jcam.iloc[idx]['lick_frames']
				licks = []
				for l in lick_frames:
					lick = get_jcam_index(self.session.timeline.times,l)
					licks.append(lick)     
				df_jcam.at[idx, 'lick_frames_jcam'] = licks
		if save==True:
			df_name = '{}_{}_beh_jcam_df.pkl'.format(self.date, self.mouse_id)
			pd.to_pickle(df_jcam, os.path.join(self.path, df_name))

		self.df = df_jcam
		return self.df
Example #5
0
 def make_rewards_df(self):
     rewards_df = fg.load_rewards(self.pkl)
     rewards_df['jcam_rew_frame'] = get_jcam_index(
         self.session.timeline.times, rewards_df['frame'])
     self.rewards_df = rewards_df
     return self.rewards_df
Example #6
0
 def make_licks_df(self):
     licks_df = fg.load_licks(self.pkl)
     licks_df['jcam_lick_frame'] = get_jcam_index(
         self.session.timeline.times, licks_df['frame'])
     self.licks_df = licks_df
     return self.licks_df