按你的说法,假设 sh1 和 srh2 分别如下:
sh1
HHID LINE otherVar
1 30 1
8 23 2
2 27 3
2 23 4
5 24 5
7 21 6
6 22 7
9 29 8
10 26 9
8 24 10
7 30 11
10 27 12
9 25 13
4 24 14
3 25 15
sh2
HHID LINE otherVAR
15 30 1
10 28 2
15 29 3
11 30 4
6 27 5
7 27 6
12 27 7
12 25 8
6 26 9
9 30 10
按我的程序
position1 <- match(sh1$a, sh2$a) & match(sh1$b, sh2$b)
position2 <- match(sh2$a, sh1$a) & match(sh2$b, sh1$b)
tmp1 <- sh1[!is.na(position1),]
tmp2 <- sh2[!is.na(position2),]
我不明白,有什么理由一定保证 tmp1 和 tmp2 会有同样的长度,并且能把tmp1 和 tmp2并列起来?!(你知不知道并列起来将意味着什么?)
我更不明白,是我没说清楚,还是你根本就没有真正明白你想要解决的问题!
P.S. 请不要在标题上注明什么“高手”。就你目前的水平,根本无须高手来回答你,真正的高手也根本不屑回答你这么如此初级、而且不带自己思考的问题。换句话说, 你现在的有这样那样的问题,只是因为你不努力学习,跟高手不高手的一点关系都没有。这么初级的问题还一问再问!如果你就想着别人帮你解决一切,而实在 懒得 自己去思考,那么,我的忠告是:S-Plus/R根本不适合你,你不妨于学别的软件。学习R的人,不一定都是很聪明的(比如我),但一定是很勤奋的、至少 是勤于思考的(比如我)。我不是没问题,但我没有像你这种自己不努力学习、不自己思考、而只会张嘴就问的问题。如果你无法接受我这些话,那么你真的应该放 弃S-Plus/R了。
Good Luck!
[此贴子已经被作者于2008-4-7 7:21:42编辑过]