np.percentile和np.clip 异常值清洗q1, q99 np.percentile(raw, [1, 99]) raw np.clip(raw, q1, q99) # 简单的限幅假设我们现在又这么一组体温数据raw [36.5, 36.6, 36.4, 36.7, 36.5, 36.6, 36.4, 36.5, 36.6, 36.7, 36.5, 36.6, 36.4, 36.7, 36.5, 36.6, 36.4, 36.5, 36.6, 45.0]我们的需求是需要把36.4和45.0的进行清洗第一行q1, q99 np.percentile(raw, [1, 99]) 人话翻译把数组 raw 里的所有数字按从小到大排个队找到处于 1% 位置的那个数赋值给 q1和处于 99% 位置的那个数赋值给 q99。 q1下边界队伍里排在最前面的那 1% 的“极小值”的分界线。 q99上边界队伍里排在最后面的那 1% 的“极大值”的分界线。第二行raw np.clip(raw, q1, q99) 人话翻译把数组 raw 里所有数字卡死在 q1 和 q99 之间。 比 q1 还小的数字直接强行改成 q1。 比 q99 还大的数字直接强行改成 q99。 介于两者之间的数字原封不动保持不变。