Encontre todos os elementos NaN dentro de uma matriz
Pergunta
Existe um comando no MATLAB que me permite encontrar todos os NaN (Not-a-Number) elementos dentro de uma matriz?
Solução 3
Eu só encontrei a resposta:
k=find(isnan(yourarray))
k vai ser uma lista de indicies elemento NaN.
Outras dicas
Como se observa, a melhor resposta é isnan () (embora +1 para meta-resposta lascas de madeira). Um exemplo mais completo de como usá-lo com indexação lógico:
>> a = [1 nan;nan 2]
a =
1 NaN
NaN 2
>> %replace nan's with 0's
>> a(isnan(a))=0
a =
1 0
0 2
isnan (a) retorna uma matriz lógica, uma série de verdadeira e falsa do mesmo tamanho que um, com "verdadeiro" cada lugar há um nan, que pode ser usado para índice em uma.
Enquanto isnan é a solução correta, vou apenas apontar o caminho para tê-lo encontrado. Use lookfor. Quando você não sabe o nome de uma função no MATLAB, tente lookfor.
lookfor nan
rapidamente dar-lhe os nomes de algumas funções que trabalham com NaNs, bem como dando-lhe a primeira linha de seus blocos de ajuda. Aqui, teria listado (entre outras coisas)
Isnan True para Not-a-Number.
que é claramente a função que deseja usar.