Qual é a complexidade do cálculo do coeficiente de correlação de Spearman?

10

Estive estudando o coeficiente de correlação de Spearman

.ρ=Eu(xEu-x¯)(yEu-y¯)Eu(xEu-x¯)2Eu(yEu-y¯)2

para duas listas e y 1 , , y n . Qual é a complexidade do algoritmo?x1 1,,xny1 1,,yn

Como o algoritmo deve apenas computar subtrações, é possível ser O ( n ) ?nO(n)

DavideChicco.it
fonte

Respostas:

8

Você tem que calcular

  • duas médias,
  • diferenças,2n
  • três somas com somas - que podem ser calculadas em tempo constante - cada uma en
  • uma divisão, uma multiplicação e uma raiz quadrada.

O(n)

Em relação ao espaço, você tem várias opções:

  • O(registroM)M6n
  • 2n+2O(nregistroM)4n

O que é preferível depende do seu contexto.

Rafael
fonte
6

Você deixou de fora um passo importante ... A fórmula que você tem é a correlação de pearson. O que o torna lanceiro é que xey são as fileiras das duas variáveis ​​originais. Essa etapa de classificação deve ser levada em consideração para a complexidade do coeficiente de correlação de spearman. Essencialmente, você deve classificar cada uma das duas variáveis, que dependerão do algoritmo de classificação escolhido, seguido pelo cálculo mencionado acima.

Derek McCrae Norton
fonte