我有关于石油运输的数据,我需要创建这些(原产地 - 国家和地区)的贸易流量。例如,总结从沙特阿拉伯,阿拉伯海湾到美国,美国海湾的所有货物。
我可以使用proc制表,但我想创建一个变量。我的变量是:LoadCountry,LoadArea,DischargeCountry,DischargeArea。此外,如果区域不同,可以多次列出LoadCountry或DischargeCountry,因此不同的流程包括所有四个变量。
我应该可以使用PROC SQL,但我无法弄清楚如何通过GROUP BY几个变量来创建总和:
proc sql;
title 'LoadCountry-LoadArea-DischargeCountry-DischargeArea Trade flows';
create table data.TradeFlow as
select LoadCountry, LoadArea, DischargeCountry, DischargeArea,
sum(CargoSize) as TotalCargo
from data.allvars1
Group by LoadCountry
Order by LoadCountry, DischargeCountry;
quit;
非常感谢任何帮助。
答案 0 :(得分:3)
如果我理解正确,你几乎就在那里......只需将其他三个变量添加到GROUP BY子句中:
proc sql;
title 'LoadCountry-LoadArea-DischargeCountry-DischargeArea Trade flows';
create table data.TradeFlow as
select LoadCountry, LoadArea, DischargeCountry, DischargeArea,
sum(CargoSize) as TotalCargo
from data.allvars1
Group by LoadCountry, LoadArea, DischargeCountry, DischargeArea
Order by LoadCountry, DischargeCountry;
quit;