corr(x,y) nan

4 visualizaciones (últimos 30 días)
Vishal Thakkar
Vishal Thakkar el 15 de Ag. de 2019
Editada: Image Analyst el 16 de Ag. de 2019
Hello, I am trying to run a correlation using corr(x,y), but my dataset has NaNs in it, for different participants (beginner coder here).
For example, my dataset and code may look like this:
a = [78 88 87 54 68 91 72 nan 88 nan];
b = [nan 35 42 44 67 55 nan 34 25 33];
x = ~isnan(a);
y = ~isnan(b);
[r,p] = corr(x,y)
The result is a table full of NaN in the ouptut.
I am trying to get the r value and the p value. Would there be another way to achieve this?

Respuesta aceptada

Michael
Michael el 15 de Ag. de 2019
Editada: Michael el 15 de Ag. de 2019
I think you are looking for corrcoef instead of corr. To exclude the nan values, use
a = [78 88 87 54 68 91 72 nan 88 nan];
b = [nan 35 42 44 67 55 nan 34 25 33];
r = corrcoef(a,b, 'rows','complete')
  2 comentarios
madhan ravi
madhan ravi el 15 de Ag. de 2019
You forgot to provide the function in the last line.
Michael
Michael el 15 de Ag. de 2019
Ups, I'm sorry. I edited my posting.

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre Data Distribution Plots en Help Center y File Exchange.

Etiquetas

Community Treasure Hunt

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

Start Hunting!

Translated by