【发布时间】:2018-07-02 19:13:46
【问题描述】:
我有这样的数据:
Subject Treatment X
1 1 X12
2 2 X12
3 3 X13
4 1 X11
5 2 X13
6 3 X12
7 1 X11
8 2 X12
9 1 X11
10 3 X13
我必须使用变量 Z 来计算 X 的数量,所以 Z11=#of X11's ,Z12=#of X12's 等等,但如果 X 和 T 中的最后一个数字相同,那么你在分配中加一.
所以 Z11=X11+1 if T=1, Z12=X12+1 If T=2 and Z13=X13+1 if T=3 但是如果最后一个数字和 T 不对应,那么它将保持不变相同的 Z11=X11、Z12=X12 和 Z13=13。我正在使用 proc sql 来计算分配,但每次循环通过另一个主题时,我不知道如何添加 1。
proc sql;
create table new1 as select
sum(y="X11")+1 as z11,
sum(y="X12") as z12,
sum(y="X13") as z13
from dynamic;
quit;
任何帮助将不胜感激。
【问题讨论】:
-
我想你已经问过这个问题好几次了。请包括上面示例中预期的确切输出。