gpt4 book ai didi

python - 是否有可以去除异常值的功能?

转载 作者:行者123 更新时间:2023-11-28 16:57:20 25 4
gpt4 key购买 nike

我找到了一个函数来检测列中的异常值,但我不知道如何删除异常值

是否有从列中排除或移除异常值的函数

这是检测离群值的函数,但我需要一个函数来删除离群值

import numpy as np
import pandas as pd
outliers=[]
def detect_outlier(data_1):

threshold=3
mean_1 = np.mean(data_1)
std_1 =np.std(data_1)


for y in data_1:
z_score= (y - mean_1)/std_1
if np.abs(z_score) > threshold:
outliers.append(y)
return outliers

这里是打印异常值

#printing the outlier 
outlier_datapoints = detect_outlier(df['Pre_TOTAL_PURCHASE_ADJ'])
print(outlier_datapoints)

最佳答案

一个简单的解决方案是使用 scipy.stats.zscore

from scipy.stats import zscore
# calculates z-score values
df["zscore"] = zscore(df["Pre_TOTAL_PURCHASE_ADJ"])

# creates `is_outlier` column with either True or False values,
# so that you could filter your dataframe accordingly
df["is_outlier"] = df["zscore"].apply(lambda x: x <= -1.96 or x >= 1.96)

关于python - 是否有可以去除异常值的功能?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57161413/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com