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)
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)
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)