📜  删除异常值 numpy 数组 - Python (1)

📅  最后修改于: 2023-12-03 15:22:43.233000             🧑  作者: Mango

删除异常值 numpy 数组 - Python

在数据分析中,常常需要处理包含异常值的数据。删除异常值可以避免统计分析和建模时的偏差。本文介绍如何使用 numpy 库在 Python 中删除异常值。

准备数据

首先,我们需要准备一些数据。以下是一个包含异常值的 numpy 数组:

import numpy as np

data = np.array([1, 2, 3, 4, 5, 1000, 6, 7, 8, 9, 10])
确定异常值

接下来,我们需要确定异常值的阈值。可以使用统计学方法,例如计算标准偏差。以下示例使用中位数和标准偏差来确定异常值:

median = np.median(data)
std = np.std(data)

threshold = median + 3 * std

在此示例中,如果某个数字超过中位数加三倍标准偏差,则认为是异常值。

删除异常值

现在,我们可以使用 numpy 提供的布尔索引来删除异常值。以下是如何删除异常值的示例代码:

clean_data = data[data < threshold]

这将创建一个新的 numpy 数组,其中不包含异常值。您可以根据需要保存此数组,并在之后的分析和建模中使用它。

完整代码
import numpy as np

data = np.array([1, 2, 3, 4, 5, 1000, 6, 7, 8, 9, 10])

median = np.median(data)
std = np.std(data)

threshold = median + 3 * std

clean_data = data[data < threshold]
总结

本文介绍了如何使用 numpy 库在 Python 中删除异常值。首先,确定异常值的阈值。然后,使用 numpy 提供的布尔索引删除异常值。