R တွင် အမှားအယွင်းများကို အဓိပ္ပာယ်ပြန်ဆိုခြင်း- 'max' သည် အကြောင်းရင်းများအတွက် အရေးမပါပါ။


တစ်ချိန်မဟုတ်တစ်ချိန်တွင်၊ သင်သည် R တွင်အောက်ပါအမှားကိုကြုံတွေ့ရနိုင်သည်-

 'max' not meaningful for factors

၎င်းသည် သင်သည် class factor နှင့်ဆိုင်သော variable ၏ “ max” ကိုယူရန်ကြိုးစားနေသည်ဟုရိုးရှင်းစွာဖော်ပြထားသည်။

ဥပမာအားဖြင့်၊ ကျွန်ုပ်တို့သည် အောက်ပါ vector ၏ အများဆုံးကို ရယူရန် ကြိုးစားပါက ဤအမှားကို ထုတ်ပေးသည်-

 #create a vector of class vector
factor_vector <- as.factor(c(1, 7, 12, 14, 15))

#attempt to find max value in the vector
max(factor_vector)

#Error in Summary.factor(1:5, na.rm = FALSE): 
# 'max' not meaningful for factors

အဓိပ္ပါယ်ဖွင့်ဆိုချက်အားဖြင့်၊ factor vector တစ်ခု၏တန်ဖိုးများသည် nominal class ဖြစ်သည်၊ ဆိုလိုသည်မှာ တန်ဖိုးများ၏ အဓိပ္ပါယ်ရှိသော အစဉ်လိုက်မရှိဟု ဆိုလိုသည်။ ထို့ကြောင့် ရှာရန် “ အမြင့်ဆုံး” တန်ဖိုးမရှိပါ။

factor vector တစ်ခု၏အများဆုံးကိုရှာဖွေရန်ရိုးရှင်းသောဖြေရှင်းချက်မှာ၎င်းကို character vector သို့ပြောင်းပြီးနောက် number vector သို့ရိုးရှင်းစွာပြောင်းလဲရန်ဖြစ်သည်

 #convert factor vector to numeric vector and find the max value
new_vector <- as.numeric(as.character(factor_vector))
max(new_vector)

#[1] 15

အကယ်၍ သင့် factor vector သည် ကိန်းဂဏာန်းအမည်များသာ ပါရှိနေပါက၊ factor vector အား ကိန်းဂဏာန်းပုံသို့ ပြောင်းပြီးသည့်တိုင် အမြင့်ဆုံးတန်ဖိုးကို ရှာတွေ့နိုင်မည်မဟုတ်ပေ။ နာမည်များ

 #create factor vector with names of factors
factor_vector <- as.factor(c("first", "second", "third"))

#attempt to convert factor vector into numeric vector and find max value
new_vector <- as.numeric(as.character(factor_vector))
max(new_vector)

#Warning message:
#NAs introduced by coercion 
#[1] NA

R သည် ပြဿနာများ မကြုံတွေ့ဘဲ အများဆုံး နံပါတ် vector များ၊ date vector နှင့် character vector များကို ရှာဖွေနိုင်သည်ကို သတိပြုသင့်သည်-

 numeric_vector <- c(1, 2, 12, 14)
max(numeric_vector)

#[1] 14

character_vector <- c("a", "b", "f")
max(character_vector)

#[1] “f”

date_vector <- as.Date(c("2019-01-01", "2019-03-05", "2019-03-04"))
max(date_vector)

#[1] "2019-03-05"

ထို့ကြောင့် သင်သည် vector တစ်ခုတွင် အမြင့်ဆုံးတန်ဖိုးကို ရှာရန်ကြိုးစားနေပါက၊ သင်၏ vector သည် type factor မဟုတ်ကြောင်း သေချာပါစေ။

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

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