いくつかの変数によってグループ化するときに、グループIDを作成します。

user3507584:

私はいくつかの変数に応じて独自のグループを識別するために、id変数を作成したいと思います。

例えば、私はからのデータの車を持っているsashelp.cars、と私は独特のグループを識別したいMake- DriveTrainCylinderID変数としますgrp_id同じようにMake、同じDriveTrain数の異なるCylinder(したがって、ID変数に新しい値が新しいグループとして考えられますgrp_id)。

私は次のことを試してみましたが、新しいケースがあるとき、これは1にid変数をリセットする、また実際のすべてのユニークな組み合わせを考慮Make + DriveTrain + Cylinder異なるグループIDなどを。

data cars; set sashelp.cars; run;

proc sort data=cars; by Make DriveTrain Cylinders; run;
data cars; set cars; 
grp_id + 1;
by Make DriveTrain Cylinders
if first.Make or first.DriverTrain or first.Cylinders then grp_id = 1; 
run;

この作成方法上の任意のアイデアgrp_id条件として、いくつかの変数を使用して変数を?

draycut:

独自のコードを使用して、あなただけの小さな変更をしなければなりません

data cars; 
   set sashelp.cars; 
run;

proc sort data=cars; 
   by Make DriveTrain Cylinders; 
run;

data cars;
   set cars;
   by Make DriveTrain Cylinders;
   if first.Make or first.DriveTrain or first.Cylinders then grp_id + 1; 
run;

おすすめ

転載: http://10.200.1.11:23101/article/api/json?id=377821&siteId=1