2017-03-02 3 views
0

Ich habe einen Datensatz in einem Portfolio und wollte einige Segmentierung in SAS. Ein Teil des Datensatzes sieht wie folgt aus:Segmentierung in SAS

ID Var1 Prod  Date  Balance 

1 10  L1 Jul-09  200 
1 10  L2 Aug-09  300 
2 5  L1.1 Aug-09  -150 
2 5  L3 Sep-09  200 

ich Segmentierung erstellen möchten auf Werte von Prod (z L1, L2, etc). Irgendwelche Vorschläge?

Antwort

-1

Ich bin nicht vertraut mit Segmentierung, aber können Sie eine Klassenanweisung verwenden?

+2

Dies ist wahrscheinlich besser geeignet als Kommentar statt eine Antwort. – Quentin

0

Die Segmentierung in dem von Ihnen bereitgestellten Kontext ist ein wenig mehrdeutig. Wenn durch, dass Sie segmentieren Datensätze, die jeweils Beobachtungen im Zusammenhang mit einem eindeutigen Wert von Prod erstellen bedeuten zu, könnten Sie den Code aus here nutzen können:

/* define which libname.member table, and by which column */ 
%let TABLE=sashelp.cars; 
%let COLUMN=origin; 

proc sql noprint; 
/* build a mini program for each value */ 
/* create a table with valid chars from data value */ 
select distinct 
    cat("DATA out_",compress(&COLUMN.,,'kad'), 
    "; set &TABLE.(where=(&COLUMN.='", &COLUMN., 
    "')); run;") into :allsteps separated by ';' 
    from &TABLE.; 
quit; 

/* macro that includes the program we just generated */ 
%macro runSteps; 
&allsteps.; 
%mend; 

/* and...run the macro when ready */ 
%runSteps;