This commit is contained in:
efish 2018-11-22 15:11:31 +01:00
parent f3a6fbbc37
commit 00b568be28
4 changed files with 53 additions and 37 deletions

View File

@ -9,7 +9,7 @@ from IPython import embed
data_dir = "../data"
dataset = "2018-11-09-ad-invivo-1"
data = ("2018-11-09-ad-invivo-1", "2018-11-09-ae-invivo-1", "2018-11-09-ag-invivo-1", "2018-11-13-aa-invivo-1", "2018-11-13-ac-invivo-1", "2018-11-13-ad-invivo-1", "2018-11-13-ah-invivo-1", "2018-11-13-ai-invivo-1", "2018-11-13-aj-invivo-1", "2018-11-13-ak-invivo-1", "2018-11-13-al-invivo-1", "2018-11-14-aa-invivo-1", "2018-11-14-ac-invivo-1", "2018-11-14-ad-invivo-1", "2018-11-14-af-invivo-1", "2018-11-14-ag-invivo-1", "2018-11-14-ah-invivo-1", "2018-11-14-ai-invivo-1", "2018-11-14-ak-invivo-1", "2018-11-14-al-invivo-1", "2018-11-14-am-invivo-1", "2018-11-14-an-invivo-1")
#data = ("2018-11-09-ad-invivo-1", "2018-11-09-ae-invivo-1", "2018-11-09-ag-invivo-1", "2018-11-13-aa-invivo-1", "2018-11-13-ac-invivo-1", "2018-11-13-ad-invivo-1", "2018-11-13-ah-invivo-1", "2018-11-13-ai-invivo-1", "2018-11-13-aj-invivo-1", "2018-11-13-ak-invivo-1", "2018-11-13-al-invivo-1", "2018-11-14-aa-invivo-1", "2018-11-14-ac-invivo-1", "2018-11-14-ad-invivo-1", "2018-11-14-af-invivo-1", "2018-11-14-ag-invivo-1", "2018-11-14-ah-invivo-1", "2018-11-14-ai-invivo-1", "2018-11-14-ak-invivo-1", "2018-11-14-al-invivo-1", "2018-11-14-am-invivo-1", "2018-11-14-an-invivo-1","2018-11-20-aa-invivo-1", "2018-11-20-ab-invivo-1", "2018-11-20-ac-invivo-1", "2018-11-20-ad-invivo-1"," 2018-11-20-ae-invivo-1", "2018-11-20-af-invivo-1", "2018-11-20-ag-invivo-1", "2018-11-20-ah-invivo-1", "2018-11-20-ai-invivo-1")
@ -56,7 +56,7 @@ axs[1,1].set_xlabel('Time [ms]')
#for i in df_map.keys():
freq = list(df_map['-50Hz'])
freq = list(df_map[-50])
ls_mod = []
ls_beat = []
for k in freq:
@ -71,18 +71,35 @@ for k in freq:
beat_cut = ampl[(zeit > chirp-55) & (zeit < chirp-10)]
chirp_mod = np.std(eods_cut) #Std vom Bereich um den Chirp
ls_mod.append(chirp_mod) #in die richtige Reihenfolge bringen?
#momentan nicht nach Chirp-Platz sortiert, sondern nacheinander
ls_mod.append(chirp_mod)
ls_beat.extend(beat_cut)
#erst beat_cuts auf die gleiche Länge bringen!
ls_beat.append(beat_cut)
#beat_mod = np.std(ls_beat) #Std vom Bereich vor dem Chirp
beat_mod = np.std(ls_beat) #Std vom Bereich vor dem Chirp
plt.figure()
plt.scatter(np.arange(0,len(ls_mod),1), ls_mod)
plt.scatter(np.arange(0,len(ls_mod),1), np.ones(len(ls_mod))/2, color = 'violet')
plt.scatter(np.arange(0,len(ls_mod),1), np.ones(len(ls_mod))*beat_mod, color = 'violet')
plt.show()
#Chirps einer Phase zuordnen - zusammen plotten?
dct_phase = {}
chirp_spikes = read_chirp_spikes(os.path.join(data_dir, dataset))
df_map = map_keys(chirp_spikes)
sort_df = sorted(df_map.keys())
num_bin = 12
phase_vec = np.arange(0, 1+1/num_bin, 1/num_bin)
for i in sort_df:
freq = list(df_map[i])
dct_phase[i] = []
for k in freq:
for phase in chirp_spikes[k]:
dct_phase[i].append(phase[1])
#for idx in np.arange(num_bin):
#if phase[1] > phase_vec[idx] and phase[1] < phase_vec[idx+1]:
print(dct_phase)

View File

@ -7,7 +7,7 @@ from IPython import embed #Funktionen importieren
data_dir = "../data"
dataset = "2018-11-09-aa-invivo-1"
#data = ("2018-11-09-aa-invivo-1", "2018-11-09-ab-invivo-1", "2018-11-09-ac-invivo-1", "2018-11-09-ad-invivo-1", "2018-11-13-aa-invivo-1", "2018-11-13-ab-invivo-1", "2018-11-13-ad-invivo-1", "2018-11-09-af-invivo-1", "2018-11-09-ag-invivo-1", "2018-11-13-ah-invivo-1", "2018-11-13-ai-invivo-1", "2018-11-13-aj-invivo-1", "2018-11-13-ak-invivo-1", "2018-11-13-al-invivo-1", "2018-11-14-aa-invivo-1", "2018-11-14-ab-invivo-1", "2018-11-14-ac-invivo-1", "2018-11-14-ad-invivo-1", "2018-11-14-ae-invivo-1", "2018-11-14-af-invivo-1", "2018-11-14-ag-invivo-1", "2018-11-14-aa-invivo-1", "2018-11-14-aj-invivo-1", "2018-11-14-ak-invivo-1", "2018-11-14-al-invivo-1", "2018-11-14-am-invivo-1", "2018-11-14-an-invivo-1")
#data = ("2018-11-09-aa-invivo-1", "2018-11-09-ab-invivo-1", "2018-11-09-ac-invivo-1", "2018-11-09-ad-invivo-1", "2018-11-13-aa-invivo-1", "2018-11-13-ab-invivo-1", "2018-11-13-ad-invivo-1", "2018-11-09-af-invivo-1", "2018-11-09-ag-invivo-1", "2018-11-13-ah-invivo-1", "2018-11-13-ai-invivo-1", "2018-11-13-aj-invivo-1", "2018-11-13-ak-invivo-1", "2018-11-13-al-invivo-1", "2018-11-14-aa-invivo-1", "2018-11-14-ab-invivo-1", "2018-11-14-ac-invivo-1", "2018-11-14-ad-invivo-1", "2018-11-14-ae-invivo-1", "2018-11-14-af-invivo-1", "2018-11-14-ag-invivo-1", "2018-11-14-aa-invivo-1", "2018-11-14-aj-invivo-1", "2018-11-14-ak-invivo-1", "2018-11-14-al-invivo-1", "2018-11-14-am-invivo-1", "2018-11-14-an-invivo-1", "2018-11-20-aa-invivo-1", "2018-11-20-ab-invivo-1", "2018-11-20-ac-invivo-1", "2018-11-20-ad-invivo-1"," 2018-11-20-ae-invivo-1", "2018-11-20-af-invivo-1", "2018-11-20-ag-invivo-1", "2018-11-20-ah-invivo-1", "2018-11-20-ai-invivo-1")
time,eod = read_baseline_eod(os.path.join(data_dir, dataset))
zeit = np.asarray(time)

View File

@ -8,8 +8,8 @@ from IPython import embed #Funktionen imposrtieren
data_dir = "../data"
dataset = "2018-11-09-ad-invivo-1"
#data = ("2018-11-09-aa-invivo-1", "2018-11-09-ab-invivo-1", "2018-11-09-ac-invivo-1", "2018-11-09-ad-invivo-1", "2018-11-13-aa-invivo-1", "2018-11-13-ab-invivo-1", "2018-11-13-ad-invivo-1", "2018-11-09-af-invivo-1", "2018-11-09-ag-invivo-1", "2018-11-13-ah-invivo-1", "2018-11-13-ai-invivo-1", "2018-11-13-aj-invivo-1", "2018-11-13-ak-invivo-1", "2018-11-13-al-invivo-1", "2018-11-14-aa-invivo-1", "2018-11-14-ab-invivo-1", "2018-11-14-ac-invivo-1", "2018-11-14-ad-invivo-1", "2018-11-14-ae-invivo-1", "2018-11-14-af-invivo-1", "2018-11-14-ag-invivo-1", "2018-11-14-aa-invivo-1", "2018-11-14-aj-invivo-1", "2018-11-14-ak-invivo-1", "2018-11-14-al-invivo-1", "2018-11-14-am-invivo-1", "2018-11-14-an-invivo-1")
dataset = "2018-11-13-ad-invivo-1"
#data = ("2018-11-09-ad-invivo-1", "2018-11-13-aa-invivo-1", "2018-11-13-ad-invivo-1", "2018-11-09-af-invivo-1", "2018-11-09-ag-invivo-1", "2018-11-13-ah-invivo-1", "2018-11-13-ai-invivo-1", "2018-11-13-aj-invivo-1", "2018-11-13-ak-invivo-1", "2018-11-13-al-invivo-1", "2018-11-14-aa-invivo-1", "2018-11-14-ab-invivo-1", "2018-11-14-ac-invivo-1", "2018-11-14-ad-invivo-1", "2018-11-14-ae-invivo-1", "2018-11-14-af-invivo-1", "2018-11-14-ag-invivo-1", "2018-11-14-ah-invivo-1", "2018-11-14-aj-invivo-1", "2018-11-14-ak-invivo-1", "2018-11-14-al-invivo-1", "2018-11-14-am-invivo-1", "2018-11-14-an-invivo-1", "2018-11-20-aa-invivo-1", "2018-11-20-ab-invivo-1", "2018-11-20-ac-invivo-1", "2018-11-20-ad-invivo-1"," 2018-11-20-ae-invivo-1", "2018-11-20-af-invivo-1", "2018-11-20-ag-invivo-1", "2018-11-20-ah-invivo-1", "2018-11-20-ai-invivo-1")
@ -38,46 +38,46 @@ plt.show()
#Nyquist-Theorem Plot:
chirp_spikes = read_chirp_spikes(os.path.join(data_dir, dataset))
df_map = map_keys(chirp_spikes)
ls_rate = {}
for i in df_map.keys():
sort_df = sorted(df_map.keys())
plt.figure()
dct_rate = {}
for i in sort_df:
freq = list(df_map[i])
ls_rate[i] = []
dct_rate[i] = []
for k in freq:
for phase in chirp_spikes[k]:
spikes = chirp_spikes[k][phase]
rate = len(spikes)/ 1.2
ls_rate[i].append(rate)
dct_rate[i].append(rate)
plt.figure()
sort_df = sorted(df_map.keys(),reverse = False)
print(sort_df)
for h in sort_df:
plt.plot(np.arange(0,len(dct_rate[h]),1),dct_rate[h], label = h)
for i in sort_df:
plt.plot(np.arange(0,len(ls_rate[i]),1),ls_rate[i], label = i)
plt.vlines(10, ymin = 200, ymax = 300)
plt.vlines(30, ymin = 200, ymax = 300)
plt.vlines(50, ymin = 200, ymax = 300)
plt.vlines(70, ymin = 200, ymax = 300)
plt.vlines(90, ymin = 200, ymax = 300)
plt.vlines(110, ymin = 200, ymax = 300)
plt.vlines(130, ymin = 200, ymax = 300)
plt.vlines(150, ymin = 200, ymax = 300)
#plt.vlines(10, ymin = 190, ymax = 310)
plt.legend()
plt.title('Firing rate of the cell for all trials, sorted by df')
plt.xlabel('# of trials')
plt.ylabel('Instant firing rate of the cell')
plt.show()
#mittlere Feuerrate einer Frequenz auf Frequenz
plt.figure()
ls_mean = []
for i in sort_df:
mean = np.mean(ls_rate[i])
for d in sort_df:
mean = np.mean(dct_rate[d])
ls_mean.append(mean)
plt.plot(np.arange(0,len(ls_mean),1),ls_mean)
plt.title('Mean firing rate of a cell for a range of frequency differences')
plt. xticks(np.arange(len(sort_df)), (sort_df))
plt.xlabel('Range of frequency differences [Hz]')
plt.ylabel('Mean firing rate of the cell')
plt.show()

View File

@ -36,11 +36,10 @@ def smooth(data, window, dt):
def map_keys(input):
df_map = {}
for k in input.keys():
df = k[1]
#ch = k[3]
freq = k[1]
df = int(freq.strip('Hz'))
if df in df_map.keys():
df_map[df].append(k)
else:
df_map[df] = [k]
return df_map
#print(ch)