用K-MEANS进行离群点检测的python代码
时间: 2023-08-03 10:07:36 浏览: 109
LOF.py 离群点检测程序~
以下是使用K-MEANS进行离群点检测的Python代码示例:
```python
from sklearn.cluster import KMeans
import numpy as np
# 生成数据
X = np.random.randn(100, 2)
# 拟合K-MEANS模型
kmeans = KMeans(n_clusters=2).fit(X)
# 计算每个数据点到其所属簇中心的距离
distances = kmeans.transform(X)
# 计算每个数据点到最近的簇中心的距离
min_distances = np.min(distances, axis=1)
# 根据距离阈值判断是否为离群点
threshold = np.percentile(min_distances, 95)
outliers = X[min_distances >= threshold]
print(outliers)
```
在这个示例中,我们生成了一个随机二维数据集X,并使用K-MEANS算法将其分为两个簇。然后,我们计算每个数据点到其所属簇中心的距离,并计算每个数据点到最近的簇中心的距离。最后,我们使用距离阈值来判断哪些数据点是离群点。在这个示例中,我们选择了95%的分位数作为距离阈值。
阅读全文