【发布时间】:2021-12-20 01:27:17
【问题描述】:
我正在处理一个具有 X 和 Y 值的项目,并且我尝试探索必须不存在数据的区域。从图中可以看出,大部分数据聚集在红线的两侧,也有一些数据在红线内。我只想删除那些异常值但无法实现。我尝试使用反向 KNN 算法或距离计算,但它们在我的数据中不起作用或者我做不到。有没有可能的解决方案?
我的散点图python代码如下。
import pyodbc
import matplotlib.pyplot as plt
from astroML.plotting import scatter_contour
import numpy as np
import pandas as pd
conn = pyodbc.connect('Driver={SQL Server};'
'Server=test;'
'Database=test;'
'Trusted_Connection=yes;')
sqlquery= "SELECT test FROM test"
SQL_Query = pd.read_sql_query (sqlquery, conn)
df = pd.DataFrame(SQL_Query, columns=['Data1', 'Data2'])
x = df['Data1']
y = df['Data2']
fig,ax = plt.subplots(1,1,figsize=(15,15))
scatter_contour(x,y, threshold=20, log_counts=True, ax=ax,
histogram2d_args=dict(bins=45),
plot_args=dict(marker='.', linestyle='none', color='black',
markersize=1),
contour_args=dict(cmap='summer',),
filled_contour=False)
【问题讨论】:
标签: python matplotlib cluster-computing outliers