Пометьте выброс в plot()

Я хочу построить данные, которые имеют 1 выброс. Мне нужен такой график, на котором помечен номер наблюдения выброса. Для этого у меня есть данные:

res
           x            x            x            x            x 
 -0.39123009  -0.02907481   0.01003539   0.65495527 -93.81415653

Я стараюсь:

plot(res, type = "o")
cv <- -50
abline(h = -50, lty = 2)

text(res, labels = ifelse(res > cv, names(res), ""), cex = 1, col = 4)  # add labels

Появляется диаграмма рассеяния, но нет маркировки выбросов. Как добавить метки по номеру наблюдения?

Это из-за повторения x?


person Angel    schedule 05.09.2020    source источник


Ответы (1)


Это похоже на проблему из-за структуры данных. Я взял ваши данные и преобразовал их в несколько строк вместо одной строки. Здесь ваши данные преобразованы и код для сюжета:

#Data
df <- structure(list(V1 = c(-0.39123009, -0.02907481, 0.01003539, 0.65495527, 
-93.81415653)), class = "data.frame", row.names = c("x", "x.1", 
"x.2", "x.3", "x.4"))

Код:

#Plot
plot(df$V1,type="o")
cv <- -50
abline(h = -50, lty = 2)
text(df$V1,labels=ifelse(df$V1>cv,rownames(df),""),cex=1,col=4)

Выход:

введите здесь описание изображения

person Duck    schedule 05.09.2020