Quando você deseja realizar qualquer computação estatística ou científica em Python, você sempre corre para a biblioteca cipy. A biblioteca scipy é uma das bibliotecas Python mais usadas, pois fornece uma função adequada para todo tipo de computação matemática, estatística e científica. Não é apenas uma biblioteca, mas todo um ecossistema de bibliotecas que são combinadas para que você possa executar qualquer tipo de tarefa simples ou complexa de maneira fácil e rápida. Este guia permitirá que você explore as funções scipy que podem ser usadas com matrizes mascaradas.
O que é uma matriz mascarada?
Uma matriz mascarada é uma matriz que pode ter entradas inválidas ou ausentes. Em várias ocorrências, os conjuntos de dados ou matrizes podem ser contaminados ou incompletos pela presença de dados inválidos. Por exemplo, um sensor registrou dados inválidos devido a vários motivos ou pode ter falhado em registrar nenhum dado. Agora, temos um conjunto de dados vazio ou um conjunto de dados cheio de entradas inválidas. A maneira simples de lidar com esses conjuntos de dados é mascarar essas matrizes. A biblioteca Numpy fornece uma função de mascaramento simples para mascarar esses tipos de matrizes. A própria biblioteca scipy não fornece nenhuma função de mascaramento que possa ser usada para mascarar um conjunto de dados. No entanto, ele fornece muitas funções a serem usadas com as matrizes de máscara.
Neste guia, primeiro o guiaremos sobre como você pode usar a biblioteca Numpy para mascarar um conjunto de dados. Em seguida, demonstraremos como as funções da biblioteca scipy podem ser usadas com matrizes mascaradas. Em Numpy, a matriz mascarada é uma combinação de um ndarray padrão e uma máscara. O valor da máscara pode ser nomask ou uma lista de booleanos que especificam o mascaramento para cada valor no conjunto de dados. Por exemplo, se você especificar o NOMASK para o valor da máscara, isso significa que não há valor inválido no conjunto de dados. Enquanto você especificar uma matriz booleana para o conjunto de dados, cada valor determina o valor válido ou inválido associado ao conjunto de dados fornecido. Se o valor da máscara for falso, o valor correspondente no conjunto de dados será válido, portanto não será mascarado. Se o valor da máscara for verdadeiro, o valor correspondente será inválido, por isso será mascarado. Agora, vamos ver um exemplo para ter um entendimento claro.
Exemplo 1:
Neste exemplo, vamos guiá -lo sobre como mascarar uma matriz com a função de mascaramento Numpy. Vamos explorar como o “Numpy.A função MA ”funciona em um programa para mascarar um determinado conjunto de dados. Considere o código de amostra fornecido:
importar numpy como np
importar numpy.Ma como ma
dados = np.Array ([2, 5, 8, -9, -7])
máscara = ma.Masked_array (dados, máscara = [0, 0, 0, 1, 1],
dtype = np.int8)
Print ("A matriz mascarada é: \ n", máscara)
print ("\ n")
Mask_NA = np.MA.preenchido (máscara.ASTYPE (FLOAT), NP.nan)
print ("substituído por nan: \ n", mask_na)
Primeiro, a biblioteca Numpy é importada para o programa para usar as funções da matriz e MA. A matriz é declarada usando o NP.Função Array (). Então, o MA.Masked_array () é usado para mascarar a matriz. Então, usamos o NP.MA.função preenchida () para substituir os valores inválidos por valores de nan. Agora, vejamos o seguinte resultado:
Exemplo 2:
Como entendemos como as funções Numpy são usadas para mascarar um conjunto de dados, vamos ver como usar as funções círicas na matriz mascarada para executar os cálculos de acordo com nossos requisitos. Neste exemplo, mascararemos uma matriz com funções Numpy e usando uma função círculo com as matrizes mascaradas. Considere o seguinte código de amostra:
importar numpy como np
importar numpy.Ma como ma
de Scipy.Estatísticas.MSTATS importa descrever
dados = np.Array ([2, 5, 8, -9, -7])
máscara = ma.Masked_array (dados, máscara = [0, 0, 0, 1, 1],
dtype = np.int8)
Print ("A matriz mascarada é: \ n", máscara)
print ("\ n")
Mask_NA = descreva (máscara)
print ("A descrição da matriz: \ n", mask_na)
A biblioteca Numpy é importada para o programa, pois temos que usar o MA.Função masked_array () para mascarar o conjunto de dados. A biblioteca scipy, seu pacote de estatísticas e a classe MSTATS são importados para o programa para usar a função "descrever". A função "descrever" é usada para obter a descrição estatística da matriz ou conjunto de dados especificado. A sintaxe da função descreve () é a seguinte:
O parâmetro "Array" pega os dados de entrada. O parâmetro "eixo" é usado para definir o eixo a ser usado para descrição. O parâmetro "DDOF" é usado para encontrar o grau de liberdade. E o parâmetro "viés" é usado para definir o viés estatístico. Agora, vamos ver a saída da função de descrição no seguinte snippet:
Exemplo 3:
Vamos usar outra função círculo na matriz mascarada para entender o funcionamento da função com matrizes mascaradas. Neste exemplo, mostraremos o uso da função de modo junto com a matriz mascarada. Considere o seguinte código de amostra:
importar numpy como np
importar numpy.Ma como ma
de Scipy.estatísticas importam mstats
dados = np.Array ([2, 5, 8, -9, -7])
máscara = ma.Masked_array (dados, máscara = [0, 0, 0, 1, 1],
dtype = np.int8)
Print ("A matriz mascarada é: \ n", máscara)
print ("\ n")
Mask_NA = mstats.modo (máscara)
print ("O modo de matriz: \ n", mask_na)
A primeira seção do programa é a mesma que usamos no exemplo anterior. O conjunto de dados e o método de mascarar a matriz também são os mesmos. Nós apenas mudamos o método. Aqui, usamos a função de modo para encontrar o modo da matriz mascarada. A sintaxe da função de modo é a seguinte:
O parâmetro "Array" é usado para fornecer o conjunto de dados. O parâmetro "eixo" é usado para definir o eixo a ser usado para encontrar o modo dos dados. Agora, vamos ver o modo da matriz mascarada a seguir:
Exemplo 4:
A próxima função da biblioteca scipy que pode ser usada com uma matriz mascarada é o ZSCore (). A função ZSCore é usada para calcular o zscore dos dados fornecidos. Considere o seguinte exemplo de exemplo:
importar numpy como np
importar numpy.Ma como ma
De estatísticas de importação ccepy
dados = np.Array ([2, 5, 8, -9, -7])
máscara = ma.Masked_array (dados, máscara = [0, 0, 0, 1, 1],
dtype = np.int8)
Print ("A matriz mascarada é: \ n", máscara)
print ("\ n")
Mask_NA = estatísticas.Zscore (máscara)
print ("O ZSCore é: \ n", mask_na)
Novamente, usamos o mesmo programa e apenas mudamos a função círculo para ser usada com a matriz mascarada. Como você pode ver, passamos a matriz mascarada para a função ZSCore. A sintaxe da função ZSCore é a seguinte:
O parâmetro "Array" é usado para fornecer os dados à função szcore. O parâmetro "eixo" mantém o eixo a ser usado para calcular o zscore. O parâmetro "DDOF" é usado para definir o grau de correção da liberdade. Por fim, o parâmetro "nan_policy" é usado para definir como lidar com os valores da NAN. Agora, vamos ver o seguinte resultado da função ZSCore:
Conclusão
Este artigo do Python é uma visão geral rápida da matriz mascarada ccepy. Aprendemos que o Scipy não fornece nenhuma função ou método para mascarar uma matriz. No entanto, ele fornece uma lista de funções simples e úteis que podem ser usadas com matrizes mascaradas. A biblioteca Numpy oferece o MA.Função masked_array () para mascarar a matriz e essa matriz mascarada pode ser passada para qualquer função cipy para executar a operação desejada nos dados mascarados.