Randomly Appearing Zeros in Data Output
Afficher commentaires plus anciens
Hello!
I'm still working on some code I have asked about in previous questions. All seems to be going well except in my output I keep getting zeros unexpectedly and I can't seem to figure out why
The code opens data, uses accumarray to place the data into vectors and then writes the output of the vectors into a matrix. For some reason I seem to get random rows of zero in this matrix - and I cant seem to find out why
The code is below:
% Cycle through files rownum = 1;
for f = 1: numberOfFiles resFileName = fullfile(res_files,baseFileNames(f).name) Name = baseFileNames(f).name rawData = importdata(resFileName,' ');
timeData = rawData.data(:,1);
ampData = rawData.data(:,2);
PIDget = Name(3:5)
PID = str2num(PIDget)
Task1.PID{f} = PID;
binnum = 1 + floor(timeData(:) / 39);
Task1.Amp(f).trial = accumarray( binnum, ampData(:), [], @(V) {V})
Task1.Time(f).trial = accumarray( binnum, timeData(:), [], @(V) {V})
numtrial = numel(Task1.Amp(f).trial)
% for trialnum = 1:numel(Task1.Amp(f).trial)
binnum(end)
for trialnum = 1:binnum(end)
for numbers = 1:numel(Task1.Amp(f).trial{trialnum})
timedata = Task1.Time(f).trial{trialnum}(numbers);
ampdata = Task1.Amp(f).trial{trialnum}(numbers);
DATA_raw(rownum,1) = PID;
DATA_raw(rownum,2) = trialnum;
DATA_raw(rownum,3) = timedata;
DATA_raw(rownum,4) = ampdata;
rownum = rownum + numbers;
end
end
end
The output data file DATA_Raw looks like this...
2 3 114.080000000000 0.218000000000000
0 0 0 0
0 0 0 0
0 0 0 0
2 4 120.260000000000 0.0350000000000000
Where are these zero's coming from???
Thanks, ML
2 commentaires
dpb
le 31 Mar 2014
Where is there an "output data file" or do you just mean the array in memory?
W/o any data to be able to see for certain it's not possible to say for absolute certain, but a reasonable conjecture is that your accumarray indices aren't what you think they are.
Best recommendation I can give is to use the debugger and step thru your code watching what happens as you process the data. I'll wager you'll find an "ah-ha!" moment when all becomes clear...now that may engender some other questions on how to best handle what you find, but I'll bet you find out the "why". :)
Mary
le 1 Avr 2014
Réponse acceptée
Plus de réponses (0)
Catégories
En savoir plus sur MATLAB dans Centre d'aide et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!