【发布时间】:2013-04-01 16:15:30
【问题描述】:
在 SAS 中,我将列变量与相应的列变量并排堆叠在一起,例如:
id lab1 lab2 lab3 dt1 dt2 dt3 bili1 bili2 bili3 alb1 alb2 alb3
3 dx sx sx 2/04 2/06 3/08 x.x x.x x.x x.x x.x x.x
4 dx tx tx 5/05 3/06 9/06 x.x x.x x.x x.x x.x x.x
我想转置为以下长格式:
id lab dt bili alb
3 dx 2/04 x.x x.x
3 sx 2/06 x.x x.x
3 sx 3/08 x.x x.x
4 dx 5/05 x.x x.x
4 tx 3/06 x.x x.x
4 tx 9/06 x.x x.x
但我似乎无法通过放置
来正确操作它var lab1-lab3 dt1-dt3 bili1-bili3 alb1-alb3;
其实和这没什么区别
var lab1-alb3
所以每一列都是独立处理的,但我想对这些进行聚类,以便 SAS 知道它们在长数据集中有单独的列。一些论坛建议我只执行几次转置并合并输出数据。这似乎不优雅、低效、难以阅读和乏味……比 SAS 本身更是如此。是否没有语法可以在单个数据或 proc 步骤中执行此操作?
【问题讨论】:
标签: sas