SAS中文论坛

标题: 求助:数据更新的问题 [打印本页]

作者: shiyiming    时间: 2011-1-12 20:08
标题: 求助:数据更新的问题
现在有三个表,一个大表,和两个用来更新大表的小表。
大表里有至少60个变量:code_01 - code_20, status_01 - status_20, location_01 - location_20。
这60个变量之间是有关系的,即如果变量名叫code_01,那么status_01和location_01就和它对应;
对于code_02,就对应status_02和location_02。依此类推。
两个小表(status表 和 location表)都只有两个变量,分别是code和status,code和 location。
我的任务是:按照小表里面的值去更新大表里对应的status和location的值。
如果经查询,
大表里的某个观测的code_01出现在了status表中,则按照status表里的status值去修改大表里的status_01。
大表里的某个观测的code_04出现在了status表中,则按照status表里的status值去修改大表里的status_04。
大表里的某个观测的code_03出现在了location表中,则按照location表里的location值去修改大表里的location_03。
如此等等。

code的值有很多很多,而且status表和location表里的code可能出现在大表的code_01-code_20之中的任何一个位置上。
大表里的每条观测的code总是如果有code_02,那么code_01一定存在。但是不要求每条观测的20个code都有值,即code,status和location都允许有缺失值。
大表有65000个观测,不同的code数量是1000个。
status表有100个观测(即对应100个code),
location表有200个观测(即200个code)。

举例来说,
大表的某个观测是:
id        Code_01        Code_02        Code_03        …        Code_20        Status_01        Status_02        Status_03        …        Status_20        Location_01        Location_02        Location_03        …        Location_20
1        1GH        3JK        5AU                        R        T        U                        E        S        W               
2        3JK        5AU                                T        U                                S        W                       


所以这个比较麻烦的是要确定好要更新的值的位置。

请各位帮忙看一下。非常非常感谢!
作者: Qiong    时间: 2011-1-14 10:00
标题: Re: 求助:数据更新的问题
using format
作者: shiyiming    时间: 2011-1-15 03:46
标题: Re: 求助:数据更新的问题
Thank you vicky1020.

I did use proc format and have solved the problem!

Thank you very much!




欢迎光临 SAS中文论坛 (http://mysas.net/forum/) Powered by Discuz! X3.2