Filter löschen
Filter löschen

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

82 Ansichten (letzte 30 Tage)
Alba Peris
Alba Peris am 31 Okt. 2023
Bearbeitet: MByk am 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.

Akzeptierte Antwort

Sam Chak
Sam Chak am 31 Okt. 2023
Verschoben: Sam Chak am 31 Okt. 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 Kommentare
Sam Chak
Sam Chak am 13 Mai 2024
@MByk, Try this:
idx = find(abs(yOut - 1) < eps) % find the position
yOut(idx) = 0.9999
MByk
MByk am 13 Mai 2024
Thank you very much.

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu Genomics and Next Generation Sequencing finden Sie in Help Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by