Conteúdo do Curso
Pré-processamento de Dados
Pré-processamento de Dados
Removendo Outliers
Outliers são pontos de dados que diferem significativamente dos demais pontos de dados em um conjunto de dados. Por que é importante lidar com eles? Outliers podem ocorrer por erros de medição, erros de entrada de dados ou outros fatores e podem impactar significativamente a análise de dados.
Outliers podem ter um impacto significativo na análise estatística, modelos de machine learning e na visualização de dados. Eles podem distorcer os resultados da análise estatística, levar a modelos de machine learning enviesados e dificultar a visualização precisa dos dados. Remover outliers pode ajudar a melhorar a precisão e a confiabilidade da análise e aprimorar a interpretabilidade dos resultados.
Existem várias maneiras de remover outliers em Python, mas uma técnica comum é o método do escore Z:
import numpy as np # Generate small dataset dataset = np.random.normal(0, 1, 1000) # Calculate the Z-scores z_scores = (dataset - np.mean(dataset)) / np.std(dataset) # Find the indices of the outliers outlier_indices = np.where(np.abs(z_scores) > 3)[0] # Print outliers print('Outliers are: ', dataset[outlier_indices]) # Remove the outliers filtered_data = np.delete(dataset, outlier_indices)
Neste exemplo, primeiro geramos alguns dados de amostra usando o método random.normal()
. Em seguida, calculamos os escores Z dos dados subtraindo a média e dividindo pelo desvio padrão. Definimos como outliers quaisquer pontos de dado cujo escore Z absoluto seja maior que 3 (um limite comum para identificar outliers). Encontramos os índices desses outliers utilizando o método .where()
e, em seguida, os removemos dos dados originais usando o método .delete()
.
Deve ser esclarecido que este método só funciona para dados Gaussianos. Se seus dados têm uma distribuição não simétrica, então você pode usar um escore Z modificado. O escore Z modificado é calculado como a diferença entre um ponto de dado e a mediana, dividida pelo desvio absoluto mediano.
Também é importante lembrar que nem todos os outliers precisam ser removidos pois às vezes podem ser uma parte natural dos dados e fornecer informações importantes sobre o processo ou fenômeno subjacente em estudo.
Em alguns casos, outliers podem representar eventos raros ou extremos que são importantes de capturar na análise. Por exemplo, na pesquisa médica, outliers em dados de pacientes internados podem representar casos raros mas importantes que precisam ser estudados separadamente.
Além disso, outliers podem às vezes resultar de erros de medição ou flutuações aleatórias nos dados. Nestes casos, remover todos os outliers pode não ser necessário ou apropriado.
Obrigado pelo seu feedback!