event time analysis continued... not much left
This commit is contained in:
parent
f096e9ba4f
commit
14c7538cb9
@ -73,6 +73,8 @@ def relative_rate_progression(all_event_t, title=''):
|
|||||||
snippet_starts = np.arange(0, stop_t, snippet_len)
|
snippet_starts = np.arange(0, stop_t, snippet_len)
|
||||||
all_snippet_ratio = []
|
all_snippet_ratio = []
|
||||||
for event_t in all_event_t:
|
for event_t in all_event_t:
|
||||||
|
if len(event_t) == 0:
|
||||||
|
continue
|
||||||
expected_snippet_count = len(event_t[event_t <= stop_t]) / (stop_t / snippet_len)
|
expected_snippet_count = len(event_t[event_t <= stop_t]) / (stop_t / snippet_len)
|
||||||
|
|
||||||
snippet_ratio = []
|
snippet_ratio = []
|
||||||
@ -122,6 +124,7 @@ def main(base_path):
|
|||||||
|
|
||||||
all_contact_t = []
|
all_contact_t = []
|
||||||
all_ag_on_t = []
|
all_ag_on_t = []
|
||||||
|
all_ag_off_t = []
|
||||||
|
|
||||||
for index, trial in trial_summary.iterrows():
|
for index, trial in trial_summary.iterrows():
|
||||||
print(index, len(trial_summary))
|
print(index, len(trial_summary))
|
||||||
@ -148,6 +151,11 @@ def main(base_path):
|
|||||||
load_and_converete_boris_events(trial_path, trial['recording'], sr=20_000)
|
load_and_converete_boris_events(trial_path, trial['recording'], sr=20_000)
|
||||||
all_contact_t.append(contact_t_GRID)
|
all_contact_t.append(contact_t_GRID)
|
||||||
all_ag_on_t.append(ag_on_off_t_GRID[:, 0])
|
all_ag_on_t.append(ag_on_off_t_GRID[:, 0])
|
||||||
|
all_ag_off_t.append(ag_on_off_t_GRID[:, 1])
|
||||||
|
else:
|
||||||
|
all_contact_t.append(np.array([]))
|
||||||
|
all_ag_on_t.append(np.array([]))
|
||||||
|
all_ag_off_t.append(np.array([]))
|
||||||
|
|
||||||
### communication
|
### communication
|
||||||
if not os.path.exists(os.path.join(trial_path, 'chirp_times_cnn.npy')):
|
if not os.path.exists(os.path.join(trial_path, 'chirp_times_cnn.npy')):
|
||||||
@ -181,8 +189,72 @@ def main(base_path):
|
|||||||
relative_rate_progression(all_contact_t, title=r'contact')
|
relative_rate_progression(all_contact_t, title=r'contact')
|
||||||
relative_rate_progression(all_ag_on_t, title=r'chasing')
|
relative_rate_progression(all_ag_on_t, title=r'chasing')
|
||||||
|
|
||||||
|
|
||||||
|
all_chase_chirp_mask = []
|
||||||
|
all_chase_off_chirp_mask = []
|
||||||
|
all_contact_chirp_mask = []
|
||||||
|
all_chasing_t = []
|
||||||
|
all_chase_off_t = []
|
||||||
|
all_physical_t = []
|
||||||
|
|
||||||
|
for contact_t, ag_on_t, ag_off_t, chirp_times_lose in zip(all_contact_t, all_ag_on_t, all_ag_off_t, all_chirp_times_lose):
|
||||||
|
if len(contact_t) == 0:
|
||||||
|
continue
|
||||||
|
|
||||||
|
chase_chirp_mask = np.zeros_like(chirp_times_lose)
|
||||||
|
chase_off_chirp_mask = np.zeros_like(chirp_times_lose)
|
||||||
|
for chase_on_t, chase_off_t in zip(ag_on_t, ag_off_t):
|
||||||
|
chase_chirp_mask[(chirp_times_lose >= chase_on_t) & (chirp_times_lose < chase_off_t)] = 1
|
||||||
|
chase_off_chirp_mask[(chirp_times_lose >= chase_off_t-5) & (chirp_times_lose < chase_off_t+5)] = 1
|
||||||
|
all_chase_chirp_mask.append(chase_chirp_mask)
|
||||||
|
all_chase_off_chirp_mask.append(chase_off_chirp_mask)
|
||||||
|
|
||||||
|
chasing_t = np.sum(ag_off_t - ag_on_t)
|
||||||
|
all_chasing_t.append(chasing_t)
|
||||||
|
all_chase_off_t.append(len(ag_off_t) * 10)
|
||||||
|
|
||||||
|
contact_chirp_mask = np.zeros_like(chirp_times_lose)
|
||||||
|
for ct in contact_t:
|
||||||
|
contact_chirp_mask[(chirp_times_lose >= ct-5) & (chirp_times_lose < ct+5)] = 1
|
||||||
|
all_contact_chirp_mask.append(contact_chirp_mask)
|
||||||
|
|
||||||
|
all_physical_t.append(len(contact_t) * 10)
|
||||||
|
|
||||||
|
all_physical_t = np.array(all_physical_t)
|
||||||
|
all_chasing_t = np.array(all_chasing_t)
|
||||||
|
all_chase_off_t = np.array(all_chase_off_t)
|
||||||
|
|
||||||
|
physical_t_ratio = all_physical_t / (3*60*60)
|
||||||
|
chase_t_ratio = all_chasing_t / (3*60*60)
|
||||||
|
chase_off_t_ratio = all_chase_off_t / (3*60*60)
|
||||||
|
|
||||||
|
contact_chirp_ratio = np.array(list(map(lambda x: np.sum(x)/len(x), all_contact_chirp_mask)))
|
||||||
|
chase_chirp_ratio = np.array(list(map(lambda x: np.sum(x)/len(x), all_chase_chirp_mask)))
|
||||||
|
chase_off_chirp_ratio = np.array(list(map(lambda x: np.sum(x)/len(x), all_chase_off_chirp_mask)))
|
||||||
|
|
||||||
|
|
||||||
|
fig = plt.figure(figsize=(20/2.54, 12/2.54))
|
||||||
|
gs = gridspec.GridSpec(1, 1, left=0.1, bottom=0.1, right=0.95, top=0.95)
|
||||||
|
ax = fig.add_subplot(gs[0, 0])
|
||||||
|
|
||||||
|
ax.boxplot([chase_chirp_ratio/chase_t_ratio,
|
||||||
|
contact_chirp_ratio/physical_t_ratio,
|
||||||
|
chase_off_chirp_ratio/chase_off_t_ratio], positions=np.arange(3), sym='')
|
||||||
|
ax.plot(np.arange(5)-1, np.ones(5), linestyle='dotted', lw=2, color='k')
|
||||||
|
ax.set_xlim(-0.5, 2.5)
|
||||||
|
|
||||||
|
ax.set_ylabel(r'rel. chrips$_{event}$ / rel. time$_{event}$', fontsize=12)
|
||||||
|
ax.set_xticks(np.arange(3))
|
||||||
|
ax.set_xticklabels(['chasing', 'contact', r'chase$_{off}$'])
|
||||||
|
ax.tick_params(labelsize=10)
|
||||||
|
plt.show()
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
embed()
|
embed()
|
||||||
quit()
|
quit()
|
||||||
|
# embed()
|
||||||
|
# quit()
|
||||||
pass
|
pass
|
||||||
|
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user