SAS 數據集批量拆分


數據量比較大時,需要拆分數據集,再批量計算執行;

數據簡單描述:多個cell_phone,每條cell_phone 對應多條other_cell_phone,需要大致均等拆分10份
%INCLUDE "..\00@Common\01@header\01@Header.sas";

PROC SORT DATA =S1.COM_03 OUT=COM_03;
BY CELL_PHONE;
RUN;

DATA S1.Split_03_1(DROP=ID) S1.Split_03_2(DROP=ID) S1.Split_03_3(DROP=ID) S1.Split_03_4(DROP=ID) S1.Split_03_5(DROP=ID)
S1.Split_03_6(DROP=ID) S1.Split_03_7(DROP=ID) S1.Split_03_8(DROP=ID) S1.Split_03_9(DROP=ID) S1.Split_03_10(DROP=ID);
SET COM_03;
BY CELL_PHONE;
IF _N_=1 THEN ID=1;
RETAIN ID;
IF LAST.CELL_PHONE THEN ID+1;
IF ID<=60 THEN OUTPUT S1.Split_03_1;
ELSE IF 60<ID<=120 THEN OUTPUT S1.Split_03_2;
ELSE IF 120<ID<=180 THEN OUTPUT S1.Split_03_3;
ELSE IF 180<ID<=240 THEN OUTPUT S1.Split_03_4;
ELSE IF 240<ID<=300 THEN OUTPUT S1.Split_03_5;
ELSE IF 300<ID<=360 THEN OUTPUT S1.Split_03_6;
ELSE IF 360<ID<=420 THEN OUTPUT S1.Split_03_7;
ELSE IF 420<ID<=480 THEN OUTPUT S1.Split_03_8;
ELSE IF 480<ID<=540 THEN OUTPUT S1.Split_03_9;
ELSE OUTPUT S1.Split_03_10;
RUN;


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM