コード例 #1
0
    np.save(prefix + 'trace_t_' + str(k), trace_AL.t)

spikes_t_arr, spikes_i_arr, I_arr, trace_V_arr, trace_t_arr = anal.load_wlc_data(
    prefix, num_runs=3)

fig1 = plt.figure()
plt.plot(spikes_t_arr[0] / ms, spikes_i_arr[0], '.')
plt.plot(spikes_t_arr[1] / ms, spikes_i_arr[1], '.')
plt.plot(spikes_t_arr[2] / ms, spikes_i_arr[2], '.')
plt.title('Spikes AL')
plt.xlabel('Time (ms)')
plt.ylabel('Neuron Number')
fig1.savefig('spikes_AL.pdf', bbox_inches='tight')

fig2 = plt.figure()
plt.plot(trace_t_arr[0] / ms, mean(trace_V_arr[0], axis=0) / mV)
plt.title('LFP AL')
plt.xlabel('Time (ms)')
plt.ylabel('Membrane Voltage (mV)')
fig2.savefig('lfp_AL.pdf', bbox_inches='tight')

PCAdata = anal.doPCA(trace_V_arr, k=3)
anal.plotPCA(PCAdata, N_AL, el=30, az=0, skip=1, start=50)

anal.getMIM(trace_V_arr)  #takes a long time
MIM = np.load('MIM.npy')
data = np.hstack(trace_V_arr).T
length = len(trace_V_arr[0][0])

InCAdata = anal.doInCA(MIM, data, length, skip=1, k=3)
anal.plotInCA(InCAdata, N_AL, start=400)
コード例 #2
0
ファイル: WLC_cone.py プロジェクト: annamiller/olfaction_NN
        np.save(prefix + 'spikes_t_' + str(n), spikes_AL.t)
        np.save(prefix + 'spikes_i_' + str(n), spikes_AL.i)
        np.save(prefix + 'I_' + str(n), I)
        np.save(prefix + 'trace_V_' + str(n), trace_AL.V[:, start:])
        np.save(prefix + 'trace_t_' + str(n), trace_AL.t[start:])
        n = n + 1

spikes_t_arr, spikes_i_arr, I_arr, trace_V_arr, trace_t_arr = anal.load_wlc_data(
    prefix, num_runs=num_odors * num_trials)

base_od = []
for i in range(num_odors):
    base_od.append(trace_V_arr[i * num_trials])

pca_arr = anal.doPCA(trace_V_arr, k=2)
# EV = anal.getPrincEV(base_od, k = 2)

# # am = angle_mat(vk_arr)
# pca_arr = anal.pcaEV(trace_V_arr, EV)

title = 'Noise ' + str(np.rint(100 * noise / sqrt(3))) + '%'
name = 'Noise_' + str(np.rint(100 * noise / sqrt(3))) + '%.pdf'
# title = 'Principle Vector Analysis Noise '+ str(np.rint(100*noise/sqrt(3)))+'%'
# name = 'Principle_Vector_Analysis_noise.pdf'
anal.plotPCA2D(pca_arr, title, name, num_trials, skip=2)

# ang_mat = anal.angle_mat(trace_V_arr)
# np.savetxt('angle_mat.txt', np.round(ang_mat, 2), fmt = '%1.2f')
# print(ang_mat)
コード例 #3
0
ex.createData(run_params_test, I_arr, states, net)

#load in the data from disk
spikes_t_arr, spikes_i_arr, I_arr, trace_V_arr, trace_t_arr, label_arr = anal.load_data(
    tr_prefix, num_runs=num_odors * num_train)
spikes_t_test_arr, spikes_i_test_arr, I_test_arr, test_V_arr, test_t_arr, label_test_arr = anal.load_data(
    te_prefix, num_runs=num_odors * num_test)

#-------------------------------------------------------------------
#SVM

pca = True  #do PCA on output or not

if pca:  #do PCA on the output
    pca_dim = 3
    pca_arr, PCA = anal.doPCA(trace_V_arr, k=pca_dim)

    X = np.hstack(pca_arr).T
else:
    X = np.hstack(trace_V_arr).T

#normalize
mini = np.min(X)
maxi = np.max(X)
X = anal.normalize(X, mini, maxi)

y = np.hstack(label_arr)

#train the SVM
clf = anal.learnSVM(X, y)