R,ggplot2 qqplot使用2个向量+直线?

时间:2018-03-28 13:23:34

标签: r dataframe ggplot2 statistics

我有2个data.frame个对象:

  • DF1
  • DF2

两者都有一列=金额。

例如:

df1 <- data.frame(amount = c(119.00,191.41,69.00,396.80,245.00,24.50,300.00,149.77,599.01,397.65))
df2 <- data.frame(amount = c(60.00,336.38,115.37,220.01,60.00,611.88,189.78,129.98,34.90,45.00))

我想使用它们制作qqplot并添加y = x直线以查看它们是否具有相同的分布。

我正在使用qqplot(df1$amount, df2$amount) + abline(),但它不起作用:Error: ggplot2 doesn't know how to deal with data of class uneval 请指教。

另外请解释一下,如果我在qqplot中有一个几乎直线,但我有一个&#34;等级&#34;那 - 这是什么意思?

1 个答案:

答案 0 :(得分:2)

正如已经指出的那样,qqplot()abline()是来自套餐&#39; stats&#39;的基本R函数。和&#39;图形&#39;。无需使用&#39; ggplot2&#39;中的+。包。

将数据收集到一个data.frame中会更方便。

df <- data.frame(
"Amount_X" = c(119.00,191.41,69.00,396.80,245.00,24.50,300.00,149.77,599.01,397.65), 
"Amount_Y" = c(60.00,336.38,115.37,220.01,60.00,611.88,189.78,129.98,34.90,45.00)
)

该图的基本R解决方案如下:

qqplot(df$Amount_X, df$Amount_Y)
abline(0,1)

enter image description here