各位高手,本人sas初学者,研究省际人口迁移,原有数据中pro_id代表迁入省份,fpro_id代表迁出省份,即数字1可以视为1省。新生成三个变量pro1,pro2,pro3其实就是1省,2省,3省的数据。里面的数字意义拿spro1这一列中最后一个2为例来说,就是从1省迁移到3省的总人数。
我自己现在只会做pro1这一列,希望用一次循环或者宏语句同时计算后面几列(这里只是例子,实际有31个省之间的迁移)所以恳请大家帮帮我!先在这里谢谢大家!
计算spro1的程序如下:(假设第一个图是我自己处理过的名称为 A,第二个表为c)
data B;
set A;
if pro_id=1 then pro1=1;
else pro1=0;
run;
proc sort data=B;by pro_id;run;
data C;
set B;
by pro_id;
if first.pro_id then spro1=spro;
else sspro1+spro;
run;
基本程序是这么写的,但是具体怎么套用循环还是请教高手~