Como extrair os zeros no Matlab

Valores zero em sua matriz de dados MATLAB podem dificultar sua análise de dados. Estatísticas ou cálculos de processamento de sinal podem fornecer resultados sem sentido. As encomendas podem ser difíceis de ler quando os valores zero são plotados. A extração dos valores zero, retirando-os da matriz de dados, permite trabalhar com os dados úteis para obter resultados significativos.

Passo 1

Copie a matriz de dados original para outra variável, atribuindo seu valor a um novo nome de variável. Se você precisar usar a matriz como era antes de remover os zeros, poderá usar esta nova variável.

Se a matriz for chamada M, por exemplo, atribua-a a uma nova variável chamada Mzeros. Para fazer isso, digite “Mzeros = M” (sem as aspas) na linha de comando do Matlab.

Etapa 2

Salve a matriz de dados original em um arquivo de texto, caso precise novamente mais tarde, usando a função “dlmwrite” do MATLAB. Se a variável MATLAB que armazena seus dados acidentalmente for excluída ou substituída, você poderá recarregar os dados originais desse arquivo de texto.

Por exemplo, se a matriz de dados original estiver armazenada na variável Mzeros, digite “dlmwrite (‘Mzeros.dat’, Mzeros)” (sem as aspas) para gravar o Mzeros em um arquivo de texto chamado Mzeros.dat.

Você pode pular esta etapa se os dados já estiverem armazenados em um arquivo de texto.

Etapa 3

Decida se você precisa manter sua matriz de dados do mesmo tamanho e forma. Mantenha o tamanho da matriz e o formulário se as linhas da matriz e as colunas tiverem um significado específico (por exemplo, cada linha representa um teste experimental diferente e cada coluna representa uma quantidade diferente de medida). Para manter o mesmo tamanho e forma, substitua cada valor zero por um valor de NaN (representando “não um número”).

Para substituir os valores de zeros por NaN em uma matriz chamada M, digite “M (M == 0) = NaN” sem as aspas. Certifique-se de escrever M == 0 com dois sinais de igualdade. Este comando diz ao MATLAB para encontrar todos os elementos de M iguais a zero e substituí-los por NaN.

Tudo na matriz permanece na mesma posição (a mesma linha e coluna), mas todos os zeros serão agora NaN. Como a maioria das funções do MATLAB ignora os valores de NaN, é possível representar graficamente e analisar os dados como se os NaNs não estivessem presentes, obtendo resultados significativos.

Etapa 4

Você pode remover completamente os zero elementos (em vez de substituí-los por espaços reservados) se a organização for uma lista simples de valores, sem linhas e colunas significativas. Para remover os elementos zero em uma matriz chamada M, digite “M (M == 0) = []” (sem as aspas). Certifique-se de escrever M == 0 com dois sinais de igualdade. Este comando diz ao MATLAB para encontrar todos os elementos de M iguais a zero e substituí-los por []. [] representa “vazio”. Substituir um valor por [] remove esse elemento.

Se M fosse uma matriz bidimensional, agora será um vetor de coluna, que contém todos os elementos diferentes de zero do M original, tomado como modo de coluna. Por exemplo, se M era uma matriz com duas linhas e quatro colunas:

[1 6 0 3 2 0 7 4]

agora será [1 2 6 7 3 4].

Se M era um vetor (apenas uma linha ou coluna), agora será um vetor mais curto. Por exemplo, se M era [1 2 0 3], agora será [1 2 3].

A matriz altera sua forma e tamanho quando você elimina os zero elementos. Mas como a matriz não possui valores de espaço reservado para NaN, você pode analisar os dados, mesmo com as funções MATLAB que não ignoram os valores de NaN.

Referências

 

Você pode estar interessado:

Deixe um comentário