-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathsave_accommodationPSP.m
More file actions
46 lines (42 loc) · 2.99 KB
/
save_accommodationPSP.m
File metadata and controls
46 lines (42 loc) · 2.99 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
% Results should be struct containing sweeps
function [Results] = save_accommodationPSP(Results,filename)
[Results] = bracket2nan(Results); % convert empty brackets into NaN
label = {'ABF File','Sweep','Spike Number','Baseline (mV)','Spike Times (ms)','Spike Amplitude (mV)','Spike Threshold Time (ms)','Spike Threshold (mV)',...
'Spike 1/2 Width-Baseline (ms)','Spike 1/2 Width-Threshold (ms)','Spike 1/2 Width 1st Width-Baseline (ms)','FastAHP Time (ms)','FastAHP Voltage(mV)',...
'ISI (ms)','EPSP Time (ms)','EPSP Amp (mV)','EPSP Amp-Baseline (mV)','IPSP Time (ms)','IPSP Amp (mV)','IPSP Amp-Baseline (mV)'};
writethis = [];
for i = 1:length(Results) % for each sweep
numspikes = Results(i).num_spikes;
if numspikes > 1
writethistemp = [];
for s = 1:numspikes
writethistempspike = [];
writethistempspike = [cellstr(filename), i, s, num2cell(Results(i).baseline_potential),...
num2cell(Results(i).peak_times(s)), num2cell(Results(i).peak_to_baseline(s)),num2cell(Results(i).threshold_time(s)),...
num2cell(Results(i).threshold_amplitude(s)),num2cell(Results(i).SpikeWidth_Baseline(s)),num2cell(Results(i).SpikeWidth_Threshold(s)),...
num2cell(Results(i).SpikeWidth_FirstSpike(s)), num2cell(Results(i).FastAHP_Time(s)), num2cell(Results(i).FastAHP_Voltage(s))];
writethistemp = [writethistemp; writethistempspike];
end
writethistemp = [writethistemp, num2cell([NaN;Results(i).ISI]), num2cell(NaN(numspikes,6))]; % Nan in the ISI is cuz ISI is n-1. NaN(numspikes) is for the EPSP and IPSP stuff
else
if numspikes == 1
s = 1;
else
s = NaN;
end
A = NaN;
writethistemp = [];
writethistemp = [cellstr(filename), i,s, num2cell(Results(i).baseline_potential),...
num2cell(Results(i).peak_times), num2cell(Results(i).peak_to_baseline),num2cell(Results(i).threshold_time),...
num2cell(Results(i).threshold_amplitude),num2cell(Results(i).SpikeWidth_Baseline),num2cell(Results(i).SpikeWidth_Threshold),...
num2cell(Results(i).SpikeWidth_FirstSpike), num2cell(Results(i).FastAHP_Time), num2cell(Results(i).FastAHP_Voltage),num2cell(A),...
num2cell(Results(i).EPSPtime), num2cell(Results(i).EPSPamp), num2cell(Results(i).EPSPamp_baseline),...
num2cell(Results(i).IPSPtime), num2cell(Results(i).IPSPamp), num2cell(Results(i).IPSPamp_baseline)];
end
writethis = [writethis; writethistemp];
end
writethiswithlabel = [[label; writethis],[{'Enter Voltage'};num2cell(NaN(size(writethis,1),1))]];
Table = writethiswithlabel;
xlswrite(sprintf('%s AccommodationPSP.xlsx',filename),writethiswithlabel)
save(sprintf('%s AccommodationPSP.mat',filename),'Results','Table')
end