我尝试使用z得分来实现异常检测,我想用蓝色绘制所有数据点,用红色只绘制异常。
import numpy as np
# random data points to calculate z-score
data = [1, 2, 3, 4, 100]
mean = np.mean(data)
sd = np.std(data)
threshold = 2
outliers = []
for i in data:
z = (i-mean)/sd # calculate z-score
if abs(z) > threshold: # identify outliers
outliers.append(i)
谁能帮我用matplotlib的散点图在同一个图中用蓝色表示正态数据[1,2,3,4],用红色表示数据[100]?
注:我对python非常非常陌生,所以非常感谢你的帮助。
The expected plot
2条答案
按热度按时间b09cbbtk1#
用于绘制散点图。
如果你想要
qyswt5oh2#
一种方法是这样做的最小的变化,现有的代码将看起来像下面这样。注意,我用中位数而不是平均值在这里。希望这是你正在寻找的...