本文介绍了SAS 数据格式(反向过程转置?)的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

    Q1  Q2  Q3   Q4
A   1   2   3   4
B   1   2   3   4
C   1   2   3   
D   1   2       
E   1   2   3   4

我有如上的数据,想导入数据并将其改造成如下所示的样子:

I have data like above and would like to import and reshape the data into what it looks like below:

    Qtr var1
A   Q1  1
A   Q2  2
A   Q3  3
A   Q4  4
B   Q1  1
B   Q2  2
B   Q3  3
B   Q4  4
C   Q1  1
C   Q2  2
C   Q3  3
D   Q1  1
D   Q2  2
E   Q1  1
E   Q2  2
E   Q3  3
E   Q4  4

这似乎是一个过程转置",但实际上是相反的.

It seems like a 'proc transpose' but it's reversed.

请帮忙!

推荐答案

为什么不坚持使用 PROC TRANSPOSE.它可以做宽到长,也可以做长到宽.

Why not stick with PROC TRANSPOSE. It can do wide to long as well as long to wide.

data have;
input ID $ Q1  Q2  Q3   Q4;
datalines;
A   1   2   3   4
B   1   2   3   4
C   1   2   3   .
D   1   2   .   . 
E   1   2   3   4
;
run;

proc transpose data=have out=want name=Qtr;
by ID;
run;

这篇关于SAS 数据格式(反向过程转置?)的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

10-18 21:19