ادغام دو مجموعه داده

دو مجموعه داده داریم: set1 و set2. می‌خواهیم بر اساس متغیر Address در داده‌ی set1 و متغیر pk در مجموعه داده‌ی set2 آن‌ها را به هم بچسبانیم. راه حل‌هایی که وجود دارد:

اول از همه باید متغیر مشترک بین دو مجموعه داده هم‌نام باشند و بعد sort شوند و بعد با هم merge  شوند

 

Data set1;

      Set set1;

      rename address = pk;

Run;

 

Proc sort data=set1;

      By pk;

Run;

 

Proc sort data=set2;

      By pk;

Run;

 

Data set3;

     Merge set1 set2;

     By pk;

Run;

راه دوم (استفاده از گزینه‌ی مجموعه‌ی داده‌ها)

Proc sort data=set1;

      By address;

Run;

 

Proc sort data=set2;

      By pk;

Run;

 

Data set3;

     Merge set1 (rename = (address = pk)) set2;

     By pk;

Run;

راه سوم که راحت‌تر است

Proc Sql;

Create Table set3 as

Select a.*, b.*

From set1 a Full Join set2  b

On a.address=b.pk;

Quit;

 

آیا شما راه حل بهتری می‌شناسید؟