【发布时间】:2014-07-04 14:28:52
【问题描述】:
您好,我有如下数据,当我编写代码时,它给出的错误如下。, 我尝试了不同的方法,但不确定我是否做得对。,
regid Analysis value
1378979 Samsjuklighet_L 0
1378979 andrainsatser_2_L 0
1378979 behandling_1_L 5
1378979 behandling_4_L 1
1378979 behandlingsinsatser_2a_L 6
1378979 behandlingsmål_1_L 1
1378979 behandlingsmål_1_L 2
1378979 behandlingsmål_1_L 3
1378979 behandlingsmål_1_L 4
1378979 behandlingsmål_1_L 5
1378979 behandlingsmål_1_L 6
1378979 boende_1_L 1
1378979 boende_2_L 1
1378979 droger_2xc_L 2
我写了如下代码
proc transpose data=X
out=Y;
var value;
by regid;
id Analysis;
run;
但它给出了错误
ERROR: The ID value "behandlingsm_l_1_L" occurs twice in the same BY group.
ERROR: The ID value "behandlingsm_l_1_L" occurs twice in the same BY group.
ERROR: The ID value "behandlingsm_l_1_L" occurs twice in the same BY group.
ERROR: The ID value "behandlingsm_l_1_L" occurs twice in the same BY group.
ERROR: The ID value "behandlingsm_l_1_L" occurs twice in the same BY group.
我也采取了新的方式,
data X;
set X ;by regid analysis value;
if first.analysis then n = 0;
n+1;
run;
proc sort data = X;
by regid analysis value n;
run;
proc transpose data=X out=temp1 (drop=n) let ;
by regid;
var value;
id analysis;
run;
这会像上面的错误一样发出警告,但会删除所有重复项。但我想拥有变量的所有多个值。
我该怎么做?
【问题讨论】:
-
请您发布您希望输出数据集对于您提供的输入数据集的样子吗?