我想用不同的颜色绘制数据集中的异常。为此,我生成了随机数,根据条件注入了异常,然后将它们绘制了出来。但是我得到的情节是错误的。以下是代码:
n = 1000
a = 25
mu = 0
sigma = 0.5
data = rnorm(n,mu,sigma)
n_data = sample(1:n,25,replace = FALSE)
p_data = sample(1:n,25,replace = FALSE)
plot(data)
points(data[n_data],col=2)
points(data[p_data],col=3)
但这给了我一个错误的情节。它应该显示在整个图中分布的异常点,但是它显示这样的图。
如何根据索引正确绘制点?
答案 0 :(得分:3)
在这里绘制没有指定x的向量data
,因此x为x1 = 1... xn = length(data)
只需指出与之对应的x,它将起作用
points(n_data, data[n_data],col=2)
points(p_data, data[p_data],col=3)
答案 1 :(得分:0)
问题是您的随机值没有x坐标,因此绘图将简单地为每个值指定一个索引并将其视为您的x值。您总共有1000个点,但是每个有色点中只有25个有色。如果您要获取1000个有色点,它们的分布就会一样多。