how to select range of dates

3 vues (au cours des 30 derniers jours)
rohail khan
rohail khan le 11 Avr 2018
Commenté : Peter Perkins le 13 Avr 2018
I have stock data of 10 years with two columns.One is the stocks which is numeric and the other is dates which are in datetime format.I converted datetime to Numeric also. I want to calculate mean for each year using mean(stock) formula. But I dont know how can I select the data for each year separately? The days are also not continuous as there are holiday gaps How can I get the range of data for one year e.g like from jan 1 ,2007 to dec 31 2007 and then get its mean

Réponse acceptée

per isakson
per isakson le 11 Avr 2018
Modifié(e) : per isakson le 11 Avr 2018
Hint:
accumarray( t.Year-2007+1, stock, [], @mean )
where t is a datetime object
  2 commentaires
rohail khan
rohail khan le 12 Avr 2018
thank you so much.You are amazing
Peter Perkins
Peter Perkins le 13 Avr 2018
There are any number of ways to do this. accumarray is old school. full(sparse(...)) would have been even older school. More beginner-friendly ways include findgroups/splitapply, and varfun with a grouping variable. And in R2018a, groupsummary.

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Dates and Time dans Help Center et File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by