Sas တွင် box-cox အသွင်ပြောင်းနည်း


box-cox အသွင်ပြောင်းခြင်းသည် ပုံမှန်မဟုတ်သော ဖြန့်ဝေထားသောဒေတာအစုံကို ပိုမို သာမာန်ဖြန့်ဝေမှု အစုအဖြစ်သို့ ပြောင်းလဲရန်အတွက် အသုံးများသောနည်းလမ်းဖြစ်သည်။

ဤနည်းလမ်း၏နောက်ကွယ်တွင် အခြေခံအယူအဆမှာ အောက်ပါဖော်မြူလာကို အသုံးပြု၍ ပြောင်းလဲထားသောဒေတာသည် ပုံမှန်ဖြန့်ဝေမှုနှင့် တတ်နိုင်သမျှနီးစပ်သည့် λ တန်ဖိုးတစ်ခုကို ရှာဖွေရန်ဖြစ်သည်။

  • y(λ) = (y λ – 1) / λ ဆိုလျှင် y ≠ 0
  • y(λ) = log(y) ဆိုရင် y = 0

SAS တွင် λ အတွက် အသုံးပြုရန် အကောင်းဆုံးတန်ဖိုးကို PROC TRANSREG လုပ်ထုံးလုပ်နည်းကို အသုံးပြု၍ ခွဲခြားနိုင်ပါသည်။

အောက်ဖော်ပြပါ ဥပမာသည် ဤလုပ်ထုံးလုပ်နည်းကို လက်တွေ့တွင် မည်သို့အသုံးပြုရမည်ကို ပြသထားသည်။

ဥပမာ- SAS တွင် Box-Cox အသွင်ပြောင်းခြင်း။

SAS တွင် အောက်ပါဒေတာအစုံရှိသည် ဟု ယူဆကြပါစို့။

 /*create dataset*/
data my_data;
    input xy;
    datalines ;
7 1
7 1
8 1
3 2
2 2
4 2
4 2
6 2
6 2
7 3
5 3
3 3
3 6
5 7
8 8
;
run;

/*view dataset*/
proc print data =my_data;

ကျွန်ုပ်တို့သည် ဤဒေတာအတွဲအတွက် ရိုးရှင်းသောမျဉ်းကြောင်းဆုတ်ယုတ်မှုပုံစံကို ကိုက်ညီစေရန် PROC REG ကို အသုံးပြုကာ x ကို ခန့်မှန်းသူကိန်းရှင်နှင့် တုံ့ပြန်မှုကိန်းရှင်အဖြစ် y ကိုအသုံးပြုသည်ဆိုပါစို့။

 /*fit simple linear regression model*/
proc reg data =my_data;
    model y = x;
run ;

အထွက်ရလဒ်ဆိုင်ရာ ရောဂါရှာဖွေရေးကွက်များတွင်၊ အကြွင်းအကျန်များနှင့် Quantile ကွက်ကွက် (အလယ်တန်းရှိ ဘယ်ဘက်အကျဆုံးကွက်ကွက်) ကို မော်ဒယ်တွင် ခန့်မှန်းခြေအားဖြင့် ပုံမှန်ဖြန့်ဝေခြင်း ရှိ၊ မရှိ ကြည့်ရှုရန် ထုတ်ပေးနိုင်သည်-

အကြွင်းအကျန်များသည် ဂရပ်၏ ညာဘက်ထောင့်ဖြတ်မျဉ်းတစ်လျှောက် ခန့်မှန်းခြေအားဖြင့် တည်ရှိနေပါက၊ ကျန်အကြွင်းများကို ပုံမှန်အားဖြင့် ဖြန့်ဝေသည်ဟု ကျွန်ုပ်တို့ ယေဘုယျအားဖြင့် ယူဆပါသည်။

အကြွင်းအကျန်များသည် ဖြောင့်ထောင့်ဖြတ်မျဉ်းကို အလွန်အကျွံမလိုက်နာကြောင်း ဂရပ်ဇယားမှ ကျွန်ုပ်တို့တွေ့နိုင်သည်။

ဆုတ်ယုတ်မှုပုံစံရှိ တုံ့ပြန်မှုကိန်းရှင်သည် ပုံမှန်အတိုင်း ဖြန့်ဝေခြင်းမရှိကြောင်း ညွှန်ပြသည်။

တုံ့ပြန်မှုကိန်းရှင်သည် ပုံမှန်ဖြန့်ဝေခြင်းမရှိသောကြောင့်၊ ကျွန်ုပ်တို့သည် တုံ့ပြန်မှုကိန်းရှင်ကို ပိုမိုပုံမှန်အတိုင်းဖြန့်ဝေရန်အတွက် အသုံးပြုနိုင်သော λ အတွက် တန်ဖိုးတစ်ခုသတ်မှတ်ရန် PROC TRANSREG ကို အသုံးပြုနိုင်သည်။

 /*perform box-cox transformation*/
proc transreg data =my_data;
    model boxcox (y) = identity (x);
run ;

box-cox ကို SAS အဖြစ်အသွင်ပြောင်းသည်။

အထွက်တွင် λ အတွက် အသုံးပြုရန် ရွေးချယ်ထားသော တန်ဖိုးမှာ – 0.5 ဖြစ်ကြောင်း ကျွန်ုပ်တို့အား ပြောပြသည်။

ထို့ကြောင့်၊ ကျွန်ုပ်တို့သည် မူရင်းတုံ့ပြန်မှုကိန်းရှင် y ကို ကိန်းရှင် y = (y -0.5 – 1) / -0.5 ဖြင့် အစားထိုးခြင်းဖြင့် ရိုးရှင်းသောမျဉ်းကြောင်းဆုတ်ယုတ်မှုပုံစံကို အံကိုက်လုပ်နိုင်သည်။

အောက်ပါကုဒ်သည် ၎င်းကိုပြုလုပ်နည်းကို ပြသသည်-

 /*create new dataset that uses box-cox transformation to create new y*/
data new_data;
   set my_data;
   new_y = (y**(-0.5) - 1) / -0.5;
run ;

/*fit simple linear regression model using new response variable*/
proc reg data =new_data;
    model new_y = x;
run ;

Residual vs. ဤမော်ဒယ်၏ထွက်ရှိမှု၏ ပမာဏကွက်ကွက် ၊ အကြွင်းအကျန်များသည် ဖြောင့်ထောင့်ဖြတ်မျဉ်းတစ်လျှောက် ပိုမိုနီးကပ်စွာတည်ရှိနေသည်ကို ကျွန်ုပ်တို့တွေ့မြင်နိုင်သည်-

၎င်းသည် အကွက်-ကော့စ်အသွင်ပြောင်းထားသော မော်ဒယ်၏ အကြွင်းအကျန်များကို ပုံမှန်အတိုင်း ဖြန့်ဝေနေသည်၊ ၎င်းသည် linear regression ၏ အဓိက ယူဆချက် တစ်ခုအား ကျေနပ်စေသည်။

ထပ်လောင်းအရင်းအမြစ်များ

အောက်ဖော်ပြပါ သင်ခန်းစာများသည် SAS တွင် အခြားဘုံအလုပ်များကို မည်သို့လုပ်ဆောင်ရမည်ကို ရှင်းပြသည်-

SAS တွင်ပုံမှန်စစ်ဆေးမှုအတွက် Proc Univariate ကိုအသုံးပြုနည်း
SAS တွင်ကျန်ရှိသောကြံစည်မှုတစ်ခုဖန်တီးနည်း
SAS တွင် Levene စမ်းသပ်မှုပြုလုပ်နည်း

မှတ်ချက်တစ်ခုထည့်ပါ။

သင့် email လိပ်စာကို ဖော်ပြမည် မဟုတ်ပါ။ လိုအပ်သော ကွက်လပ်များကို * ဖြင့်မှတ်သားထားသည်