比较多个数据帧

时间:2012-09-24 14:52:52

标签: r dataset compare

我需要一些数据分析方面的帮助 我有两个数据集(之前和之后),我想知道它们之间的差异有多大。

之前

11330    STAT1
2721    STAT2
52438    STAT3
6124    SUZY

17401    STAT1
3462    STAT2
0    STAT3
72    SUZY

尝试将其与tapply(before$V1, before$V2, FUN=mean)分组 但是当我试图绘制它时,在x轴上我没有得到组名而是数字。 如何绘制这样的应用数据(Y轴上的频率和X轴上的组名称)?

还想问一下R中的正确命令是什么来比较这些数据集,因为我愿意找到它们之间的区别?


被修改

  

dput(前$ V1)
  c(11330L,2721L,52438L,6124L)

     

dput(前$ V2)
  结构(1:4,.Label = c(“STAT1”,“STAT2”,“STAT3”,“SUZY”),class =“factor”)

1 个答案:

答案 0 :(得分:5)

以下是一些想法。

这就是我认为您的数据的样子?

before <- data.frame(val=c(11330,2721,52438,6124),
                     lab=c("STAT1","STAT2","STAT3","SUZY"))
after <- data.frame(val=c(17401,3462,0,72),
                     lab=c("STAT1","STAT2","STAT3","SUZY"))

将它们组合成一个带有period变量的数据框:

combined <- rbind(data.frame(before,period="before"),
      data.frame(after,period="after"))

重新格式化为矩阵,并用(基础R)dotchart

绘图
library(reshape2)
m <- acast(combined,lab~period,value.var="val")
dotchart(m)

使用ggplot绘图:

library(ggplot2)
qplot(lab,val,colour=period,data=combined)