MATLAB: How to count the given data range and calculate cumulative sum of given data and plot it

arraycountcumulativedataexcelrangesum

I have excel data as attached below. I want to have sf(data.xls) range as 0-0.05,0.05-0.1, 0.1-0.15,0.15-0.2….and so on. Now, 2nd column of data represents number that have corresponding sf (num). I want to start counting the num(data.xls) that falls within sf range (0-0.05, 0.05-0.1,…) using count=1, and do cumulative of sf range and would like to put in array. Finally, I want to plot sf(0,0.05,0.1,0.15…) vs cumulative sum. Let me know your suggestion. I used count function but giving me error. Thank you.

Best Answer

Hello,
If I understand your question correctly, then this might help:
data = xlsread('data.xls');
sf = (0:.5:2.5)';
cumsum_sf = zeros(length(sf),1);
for i = 1:length(sf)
cumsum_sf(i) = numel(find(data(:,1)<=sf(i)))-sum(cumsum_sf);
end
plot(sf, cumsum_sf)
This is just an idea of how to go about it, you can always set up a loop and count if it's greater than blah and less than blah+.05.
Hope this helps!