gpt4 book ai didi

python - 比这更好的方法来删除统计异常值?

转载 作者:太空宇宙 更新时间:2023-11-04 07:23:19 25 4
gpt4 key购买 nike

此代码有效。但我忍不住觉得这是一个 hack,尤其是“抵消”部分。我必须把它放在那里,否则每次我执行删除操作时,删除中的所有索引值都会移动 1。

    # remove outliers > devs # of std deviations
devs = 1
deletes = []
for num, duration in enumerate(durations):
if (duration > (mean_duration + (devs * std_dev_one_test))) or \
(duration < (mean_duration - (devs * std_dev_one_test))):
deletes.append(num)
offset = 0
for delete in deletes:
del durations[delete - offset]
del dates[delete - offset]
offset += 1

关于如何让它变得更好的想法?

最佳答案

在遍历列表时构建守护者列表:

def isKeeper( duration ):
if (duration > (mean_duration + (devs * std_dev_one_test))) or \
(duration < (mean_duration - (devs * std_dev_one_test))):
return False
return True

durations = [duration for duration in durations if isKeeper(duration)]

关于python - 比这更好的方法来删除统计异常值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11371177/

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