yongyitian 发表于 2015-3-18 09:47 
1.
新的变量应该在原数据集中根据指定条件生成。这样可以保留zipcode与其他变量的关系,也
对啊,我试验了加第5个变量,结果SAS 瘫痪了。这个memory 是共享的,我只能使用一小部分。几百万个组合。 所以我在Excel 里用lookup 和 if 之类的语句解决了。 还有 一个问题,过去有个SAS Advance 高手编了个array 但是他走后只留了结果,存在Excel 里,没有人能找到他是怎么作出来的。
基本就是new group 一个新变量,这个变量比较奇怪。 举个例子。
new group
1x
1y
1z
11
1xx
11x
这些可都属 summary group 1 。
但是也有这样的
new group
2099
2100
2190
2120
这些都属于 summary group 40 。
规律是由另一个变量基本价定出来的。 虽然前边这些new group 不是按照一定顺序来的,但是总共有3000多个new group, 总结成有规律的 50 个 summary group。
比如说上边提到的 summary group 1 里的那些new group 都有共同的基本价, 叫base price。 我考虑可以用proc sort 先把这些基本价从大到小排起来。 不论这些new group 排序怎么乱,但是总共只有50组 base price 是独特的,只是每个base price 会在所有的3000多个new group 里出现多次。
这样我可以用proc sort 把它们找出来. 但问题是这个base price 有多个部分, part 1, part 2, part 3, part 4, part 5, part 6。 如果只sort 第一个从大到小是找不出独特的base price 的。 因为不是所有part 都是从小到大排列出的。
比如其中一个独特的base price 是part 1 (max) + part 2 (min) + part 3 (median) + part 4 (max) + part 5 (second largest) + part 6 (third smallest). 根据找出来的独特base price 来定义summary group。 这样会让我前边整理出的数据更容易使用。
请问这个用SAS array 可以轻松实现吗?