0

私は現在、長いデータフレーム ( ) のすべての行を選択する方法を理解しようとしていlongます。x1x2short

単純化されたデータは次のとおりです。

long <- read.table(text = "
  id_type   x1   x2

   1       0     0  
   1       0     1
   1       1     0
   1       1     1
   2       0     0
   2       0     1
   2       1     0
   2       1     1
   3       0     0  
   3       0     1
   3       1     0
   3       1     1
   4       0     0  
   4       0     1
   4       1     0
   4       1     1", 
header=TRUE) 

short <- read.table(text = "
   x1   x2    

   0     0    
   0     1", 
     header=TRUE) 

予想される出力は次のようになります。

 id_type  x1    x2

   1       0     0  
   1       0     1
   2       0     0
   2       0     1
   3       0     0  
   3       0     1
   4       0     0  
   4       0     1

私は使用しようとしました:

out <- long[unique(long[,c("x1", "x2")]) %in% unique(short[,c("x1", "x2")]), ] 

しかし、%in%採用はここで間違って使用されています..助けてくれてありがとう!

4

1 に答える 1

3

内部結合をリクエストしています:

> merge(long, short)
  x1 x2 id_type
1  0  0       1
2  0  0       2
3  0  0       3
4  0  0       4
5  0  1       1
6  0  1       2
7  0  1       3
8  0  1       4
于 2013-01-21T14:46:34.537 に答える