我有两个数据集A1,A2分别包含一个时间便量T1,T2,和X1,X2,两个时间变量T1(约1000个值),T2(约10000个值),我需要匹配这两个时间变量,以便将X1和X2匹配合并成一个数据集。
也就是说我有要找到每个T2时间值所对应的T1的时间值,即相对于T2值,在T1变量中小于(即早于)T2值的最接近的T1值,然后将对应的X1值,对应到X2值上。
我的想法是用计数的方法求得每个T2值对应的T1变量中比其值小的值的个数,然后即可对应。但是现在我的问题在于如何提取出变量的值然后依次比较。我不太明白如何取变量T2中的第i位数值和变量T1 中的第j位进行比较。
如果用R来做的话 我做了一个code如下,但R所耗的时间太长了,求教如何在sas中做这个问题。
newx1=rep(0,10000)
attach(mydata)
for (j in 1:10000){
for (i in 1: 1000){
if (mydata2$time[j]>=mydata$time){
newx1[j]=x1[j]
}
}
}
如过有更好的方法可以直接匹配,或者excel中可以做同样的匹配的话,请不吝赐教。
谢谢。