用python消除异常值_去除线性回归的异常值(Python)

在Python中,为了消除线性回归中的异常值,作者通过计算每个点的精度分数并找出最低的9个分数来定位异常点。使用sklearn线性回归,构建了一个循环来计算每个点的平方差,并将高差分点作为潜在异常值。然而,遇到的问题是在删除这些异常值后,图形并未更新。作者寻求最佳方法从数组中删除这些特定值,尝试的删除操作导致了数据混乱。
摘要由CSDN通过智能技术生成

我想从下面的图表中删除这9个橙色的异常点,为此我需要计算每个橙色点的准确度分数,并选择9个最低的。我怎么能做到呢?我知道可以计算整个预测精度的函数,但有什么方法可以对每个点进行精确计算吗?在

我试过这样做,但是从这里得到的x和y值与图上的异常值不匹配。(我使用的是sklearn线性回归)score_array = []

for i in range(len(x_train)):

#reshaping to fit the predict() function

x = np.array(x_train[i]).reshape(1, -1)

pred = clf.predict(x)

# calculating square difference of y_expected and y_predicted

score = y_train[i]**2 - pred**2

score_array.append(score) # array containing score for each dot

# larger the difference between squares, higher chance of being an outlier

# sorting array in descending order

score_array = sorted(score_array, key = float, reverse = True)

# first 9 members will have largest difference of squares

# outlier_score array contains score of 9 dots we want to remove

outlier_score = score_array[0:9]

outlier

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值