从SAS代码将一个表转换为另一种格式

时间:2015-01-25 14:26:38

标签: sas transpose

我的桌子是SAS,看起来像这样。

year    Country Host Code Value
2010    India   Pak 220 111
2010    India   Aus 220 123
2010    India   NZ  220 23
2010    India   SA  240 43
2010    India   WI  250 124
2010    India   SRI 250 325
2010    India   ZIM 280 235

我想将此表格转换为以下格式

Country Code    Pak_2010    Aus_2010    NZ_2010 SA_2010 WI_2010 SRI_2010 IM_2010
India   220      111       123             23    0          0       0       0
India   240       0         0              0     43         0       0       0
India   250       0         0              0     0        124       325     0
India   280       0         0              0     0          0       0       235

对于一个国家/地区和代码,会有一个值。

有人可以建议我进行此转换的代码吗?

1 个答案:

答案 0 :(得分:0)

这是一个经典的proc转置,用分隔符分隔你的ID变量:

PROC TRANSPOSE 
    DATA=yourInput
    OUT=yourOutput(drop=_name_)
    DELIMITER=_;
BY Country Code;
ID Host Year;
VAR Value;