The Math Forum

Search All of the Math Forum:

Views expressed in these public forums are not endorsed by NCTM or The Math Forum.

Math Forum » Discussions » Software » comp.soft-sys.matlab

Topic: Best way to "classify" a vector? ("averaging" subsampling)
Replies: 4   Last Post: Mar 5, 2013 6:05 AM

Advanced Search

Back to Topic List Back to Topic List Jump to Tree View Jump to Tree View   Messages: [ Previous | Next ]

Posts: 77
Registered: 6/6/12
Best way to "classify" a vector? ("averaging" subsampling)
Posted: Mar 4, 2013 4:19 PM
  Click to see the message monospaced in plain text Plain Text   Click to reply to this topic Reply

Hi everyone.
Let's suppose to have these two vectors:

t=0:0.01:1000; %timestamps
val = rand(size(t)); %value associated with each timestamp

Now let's suppose I want to calculate the mean value of val in each interval of "t" broad "1".
What would be the best way to do it?
The dumbest would be something _like_ (I'm sure somebody will find a couple of minor errors :-). But try to get the point!):

t2 = ceil (t);
[t2,I]= unique (t2,'first');
[t2,J]=unique (t2,'last');
meanVal= zeros(max(t2(:),1);
for i=1:numel(meanVal)
meanVal(i) = mean(val(I(i):val(J(i));

Now... I know that matlab always has some built in functions that does all of these basic operations better and faster.
So.... what would be a smarter way to do this??

Point your RSS reader here for a feed of the latest messages in this topic.

[Privacy Policy] [Terms of Use]

© The Math Forum at NCTM 1994-2017. All Rights Reserved.