将data.frame与多维列表合并

时间:2015-05-26 11:58:52

标签: r multidimensional-array merge dataframe columnname

我有一个数据框'QARef',包含25个变量。只有5个唯一的作业(第3列),但每个作业有很多行:

  

STR(QARef)   'data.frame':648 obs。 25个变量:

我正在使用tapply在某些行的所有5个作业中生成平均值:

RefMean <- tapply(QARef$MTN,
                  list(QARef$Target_CD, QARef$Feature_Type, QARef$Orientation, QARef$Contrast, QARef$Prox),
                  FUN=mean, trim=0, na.rm=TRUE)

我得到的东西我希望被称为多维列表:

str(RefMean)
 num [1:17, 1:2, 1:2, 1:2, 1:2] 34.1 34.2 25.2 28.9 29.2 ...
 - attr(*, "dimnames")=List of 5
  ..$ : chr [1:17] "55" "60" "70" "80" ...
  ..$ : chr [1:2] "LINE" "SQUARE"
  ..$ : chr [1:2] "X" "Y"
  ..$ : chr [1:2] "CLEAR" "DARK"
  ..$ : chr [1:2] "1:1" "Iso"

我想要做的是向QARef添加一列,其中包含每行的正确RefMean值,具体取决于QARef列和RefMean的dimnames之间的值匹配。例如。 QARef列Feature_Type ==“LINE”应与dimname“LINE”等匹配。

任何暗示如何做到这一点或在哪里找到答案都将受到高度赞赏。

1 个答案:

答案 0 :(得分:0)

我想我找到了解决方案。可能不优雅,但它有效:

public void onClick(View v) {
    ImageView image = (ImageView) inflate.inflate(R.layout.ani_image_view, null); 
    mAllImageViews.add(image);    
    image.setX(10);
    image.setY(100);
}