adding frequencys from all fish
This commit is contained in:
parent
0ed4aef196
commit
9896926a3e
@ -199,14 +199,20 @@ def main(datapath: str) -> None:
|
|||||||
# start_index = t0 * data.raw_rate
|
# start_index = t0 * data.raw_rate
|
||||||
# stop_index = (t0 + dt) * data.raw_rate
|
# stop_index = (t0 + dt) * data.raw_rate
|
||||||
|
|
||||||
# iterate through all fish
|
# calucate frequencies in wndow
|
||||||
for i, track_id in enumerate(np.unique(data.ident[~np.isnan(data.ident)])[:2]):
|
median_freq = []
|
||||||
|
track_ids = []
|
||||||
# get indices for time array in time window
|
for i, track_id in enumerate(np.unique(data.ident[~np.isnan(data.ident)])):
|
||||||
window_index = np.arange(len(data.idx))[
|
window_index = np.arange(len(data.idx))[
|
||||||
(data.ident == track_id) & (data.time[data.idx] >= t0) & (
|
(data.ident == track_id) & (data.time[data.idx] >= t0) & (
|
||||||
data.time[data.idx] <= (t0 + dt))
|
data.time[data.idx] <= (t0 + dt))
|
||||||
]
|
]
|
||||||
|
median_freq.append(np.median(data.freq[window_index]))
|
||||||
|
track_ids.append(track_id)
|
||||||
|
median_freq= np.asarray(median_freq)
|
||||||
|
track_ids= np.asarray(track_ids)
|
||||||
|
# iterate through all fish
|
||||||
|
for i, track_id in enumerate(np.unique(data.ident[~np.isnan(data.ident)])[:2]):
|
||||||
|
|
||||||
# get tracked frequencies and their times
|
# get tracked frequencies and their times
|
||||||
freq_temp = data.freq[window_index]
|
freq_temp = data.freq[window_index]
|
||||||
@ -230,6 +236,17 @@ def main(datapath: str) -> None:
|
|||||||
# get best electrode
|
# get best electrode
|
||||||
best_electrodes = np.argsort(np.nanmean(
|
best_electrodes = np.argsort(np.nanmean(
|
||||||
powers_temp, axis=0))[-config.electrodes:]
|
powers_temp, axis=0))[-config.electrodes:]
|
||||||
|
|
||||||
|
# frequency where second filter filters
|
||||||
|
search_window = np.arange(np.median(freq_temp)+config.search_df_lower, np.median(freq_temp)+config.search_df_upper, config.search_res)
|
||||||
|
check_track_ids = track_ids[(median_freq>search_window[0]) & (median_freq<search_window[-1])]
|
||||||
|
if check_track_ids.size != 0:
|
||||||
|
for j, check_track_id in enumerate(check_track_ids):
|
||||||
|
q1, q2 = np.percentile(data.freq[data.ident==check_track_id], config.search_freq_percentiles)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
search_freq = 50
|
||||||
# <------------------------------------------ Iterate through electrodes
|
# <------------------------------------------ Iterate through electrodes
|
||||||
|
|
||||||
for i, electrode in enumerate(best_electrodes):
|
for i, electrode in enumerate(best_electrodes):
|
||||||
@ -257,9 +274,6 @@ def main(datapath: str) -> None:
|
|||||||
|
|
||||||
# track_id = ids
|
# track_id = ids
|
||||||
|
|
||||||
# frequency where second filter filters
|
|
||||||
search_freq = 50
|
|
||||||
|
|
||||||
# filter baseline and above
|
# filter baseline and above
|
||||||
baseline, search=double_bandpass(
|
baseline, search=double_bandpass(
|
||||||
data_oi[:, electrode], data.raw_rate, freq_temp, search_freq
|
data_oi[:, electrode], data.raw_rate, freq_temp, search_freq
|
||||||
|
@ -31,3 +31,10 @@ search_prominence_percentile: 75
|
|||||||
# Instantaneous frequency peak detection parameters
|
# Instantaneous frequency peak detection parameters
|
||||||
instantaneous_prominence_percentile: 90
|
instantaneous_prominence_percentile: 90
|
||||||
|
|
||||||
|
# search freq parameter
|
||||||
|
search_df_lower: 25
|
||||||
|
search_df_upper: 100
|
||||||
|
search_res: 0.1
|
||||||
|
search_freq_percentiles:
|
||||||
|
- 5
|
||||||
|
- 95
|
Loading…
Reference in New Issue
Block a user