Cumulative Median in place of mean
4 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Tyler
le 13 Mai 2016
Réponse apportée : Walter Roberson
le 13 Mai 2016
Is there a way to find a cumulative median of an array without using a loop? I know of the cummean function on the file exchange, but in my application a median would be more appropriate than a mean. Thanks!
0 commentaires
Réponse acceptée
Walter Roberson
le 13 Mai 2016
No, it is not possible. Every element must be examined at least once, in a non-trivial way. That is going to require a loop, or at least an implied loop (e.g., arrayfun).
The better question is whether it can be done efficiently or whether each median() request is essentially independent of each other. It is obvious that the efficiency can be improved by keeping a sorted vector of everything that has been input before and then adding each new element into its right place (an insertion which can be done in log time) and indexing the middle of the new vector. Improvements to that idea exist; see for example http://www.stat.cmu.edu/~ryantibs/papers/median.pdf
0 commentaires
Plus de réponses (0)
Voir également
Catégories
En savoir plus sur Loops and Conditional Statements dans Help Center et File Exchange
Produits
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!