Quelle est la complexité du calcul du coefficient de corrélation de rang de Spearman?


10

J'ai étudié le coefficient de corrélation de rang du Spearman

.ρ=je(Xje-X¯)(yje-y¯)je(Xje-X¯)2je(yje-y¯)2

pour deux listes et y 1 , , y n . Quelle est la complexité de l'algorithme?X1,,Xny1,,yn

Puisque l'algorithme doit simplement calculer soustractions, est-il possible d'être O ( n ) ?nO(n)

Réponses:


8

Vous devez calculer

  • deux moyennes,
  • différences,2n
  • trois sommes avec sommets - qui peuvent être calculés en temps constant - chacun etn
  • une division, une multiplication et une racine carrée.

O(n)

Concernant l'espace, vous avez plusieurs options:

  • O(JournalM)M6n
  • 2n+2O(nJournalM)4n

Ce qui est préférable dépend de votre contexte.


6

Vous avez omis une étape importante ... La formule que vous avez est pour la corrélation de Pearson. Ce qui en fait le lanceur, c'est que x et y sont les rangs des deux variables d'origine. Cette étape de classement doit être prise en compte pour la complexité du coefficient de corrélation du lancier. Essentiellement, vous devez trier chacune des deux variables, qui dépendra de votre algorithme de tri choisi, suivi du calcul mentionné ci-dessus.

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.