Effacer les filtres
Effacer les filtres

Fisher's z transform with atanh() to rho goes to infinity

82 vues (au cours des 30 derniers jours)
Alba Peris
Alba Peris le 31 Oct 2023
Modifié(e) : MByk le 13 Mai 2024
I have run Spearman's correlations usign the following:
[rho, pval] = corr(A,B, 'type', 'Spearman', 'rows', 'complete');
I would like to conduct a fisher's z transform on my rho values so that I can compare them later on.
Doing
atanh(rho)
sometimes outputs Inf or -Inf (particularly when the output of rho is 1 / -1). In cases where the output of rho is 1.000 or -1.000 this doesn't occur.
I'm not entirely sure what I have missed or how I could fix this issue. Any help will be very much appreciated.

Réponse acceptée

Sam Chak
Sam Chak le 31 Oct 2023
Déplacé(e) : Sam Chak le 31 Oct 2023
Hi @Alba Peris, If you make sure that rho stays in the range , then will be finite.
rho = -0.999:0.001:0.999;
y = atanh(rho);
plot(rho, y), grid on, xlabel('\rho'), ylabel('y')
  7 commentaires
Sam Chak
Sam Chak le 13 Mai 2024
@MByk, Try this:
idx = find(abs(yOut - 1) < eps) % find the position
yOut(idx) = 0.9999
MByk
MByk le 13 Mai 2024
Thank you very much.

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Genomics and Next Generation Sequencing 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