2010-12-07 25 views
1

おそらく初心者質問です。他のテーブルの基準に基づいて行を選択することはできません。シンプルでなければならないが、私は何かを欠いている。私はT1、XにD列を追加したい他のテーブルの値に基づいて行を選択

T1

X C 
3 a 
4 a 
41 b 

T2

A B C D 
1 5 a 22 
7 11 a 27 
35 49 b 29 

は、私は2つのテーブルを持っていますは間にT2におけるAおよびB、およびC = Cである。だから、結果のテーブルは、次のようになります

T1bの

X C D 
3 a 22 
4 a 22 
41 b 29 

感謝。

/クリス

+0

人々がRにコピーして貼り付けることができますので、私の答えのようにあなたのデータを提供してみてくださいコンソール。 – Shane

答えて

2

これは1つの解決策です。

インポートデータ:

> con <- textConnection("X C 
+ 3 a 
+ 4 a 
+ 41 b") 
> T1 <- read.table(con, sep=" ", header=TRUE) 
> close(con) 

> con <- textConnection("A B C D 
+ 1 5 a 22 
+ 7 11 a 27 
+ 35 49 b 29") 
> T2 <- read.table(con, sep=" ", header=TRUE) 
> close(con) 

今マージし、サブセット:将来的には

> T3 <- merge(T1, T2) 
> T3[T3$X > T3$A & T3$X < T3$B, c("X", "C", "D")] 
    X C D 
1 3 a 22 
3 4 a 22 
5 41 b 29 
+0

ありがとうございました!/Chris – Chris

+1

上記のコピー&ペースト可能性については、 '>'と '+'を削除してもよいでしょうか? – Greg

関連する問題