ပြင်ဆင်နည်း- runtimewarning- double_scalars တွင် မမှန်ကန်သောတန်ဖိုးကို ကြုံတွေ့ခဲ့ရသည်။
Python တွင် သင်ကြုံတွေ့ရသော အမှားတစ်ခုမှာ-
runtimewarning: invalid value encountered in double_scalars
အလွန်သေးငယ်သော သို့မဟုတ် အလွန်ကြီးမားသော ကိန်းဂဏာန်းများပါ၀င်သည့် သင်္ချာဆိုင်ရာ လုပ်ဆောင်ချက်ကို လုပ်ဆောင်ရန် ကြိုးပမ်းသောအခါတွင် ဤအမှားသည် ဖြစ်ပေါ်လာပြီး Python သည် ရလဒ်အနေဖြင့် NaN တန်ဖိုးကို ထုတ်ပေးပါသည်။
အောက်ဖော်ပြပါ ဥပမာသည် ဤအမှားကို လက်တွေ့တွင် မည်သို့ပြုပြင်ရမည်ကို ပြသထားသည်။
အမှားကို ဘယ်လိုပြန်ထုတ်မလဲ။
ကျွန်ုပ်တို့သည် NumPy အခင်းအကျင်းနှစ်ခုဖြင့် အောက်ပါသင်္ချာလုပ်ဆောင်ချက်ကို လုပ်ဆောင်ရန် ကြိုးစားသည်ဆိုပါစို့။
import numpy as np #define two NumPy arrays array1 = np. array ([[1100, 1050]]) array2 = np. array ([[1200, 4000]]) #perform complex mathematical operation n.p. exp (-3*array1). sum () / np. exp (-3*array2). sum () RuntimeWarning: invalid value encountered in double_scalars
ပိုင်းခြေ၏ရလဒ်သည် သုညနှင့် အလွန်နီးစပ်သောကြောင့် ကျွန်ုပ်တို့သည် RuntimeWarning ကို လက်ခံရရှိပါသည်။
ဆိုလိုသည်မှာ ကွဲပြားခြင်းပြဿနာ၏ အဖြေသည် အလွန်ကြီးမားမည်ဖြစ်ပြီး Python သည် ဤမျှကြီးမားသောတန်ဖိုးကို ကိုင်တွယ်နိုင်စွမ်းမရှိပေ။
အမှားကိုဘယ်လိုပြင်မလဲ။
ပုံမှန်အားဖြင့်၊ ဤအမှားအမျိုးအစားကို ပြုပြင်ရန်နည်းလမ်းမှာ တွက်ချက်မှုများတွင် အလွန်သေးငယ်သော သို့မဟုတ် အလွန်ကြီးမားသော တန်ဖိုးများကို ကိုင်တွယ်နိုင်သည့် အခြားသော Python စာကြည့်တိုက်မှ အထူးလုပ်ဆောင်ချက်ကို အသုံးပြုခြင်းဖြစ်သည်။
ဤကိစ္စတွင်၊ ကျွန်ုပ်တို့သည် SciPy စာကြည့်တိုက်မှ logsumexp() လုပ်ဆောင်ချက်ကို အသုံးပြုနိုင်သည်။
import numpy as np from scipy. special import logsumexp #define two NumPy arrays array1 = np. array ([[1100, 1050]]) array2 = np. array ([[1200, 4000]]) #perform complex mathematical operation n.p. exp (logsumexp(-3*array1) - logsumexp(-3*array2)) 2.7071782767869983e+195
ရလဒ်သည် အလွန်ကြီးမားသော်လည်း ဤဂဏန်းအမျိုးအစားများကို ကိုင်တွယ်ရန် ဒီဇိုင်းထုတ်ထားသော SciPy စာကြည့်တိုက်မှ အထူးသင်္ချာလုပ်ဆောင်ချက်ကို အသုံးပြုထားသောကြောင့် အမှားအယွင်းများ မရရှိခဲ့သည်ကို သတိပြုပါ။
များစွာသောအခြေအနေများတွင်၊ ဤလုပ်ဆောင်ချက်များသည် သိပ္ပံနည်းကျတွက်ချက်ခြင်းအတွက် အထူးဒီဇိုင်းထုတ်ထားသောကြောင့် အလွန်အမင်းသင်္ချာလုပ်ဆောင်ချက်များကိုကိုင်တွယ်နိုင်သော SciPy စာကြည့်တိုက် ရှိ အထူးလုပ်ဆောင်ချက်များကို ရှာဖွေရကျိုးနပ်ပါသည်။
မှတ်ချက် – logsumexp() လုပ်ဆောင်ချက်အတွက် ပြီးပြည့်စုံသော အွန်လိုင်းစာရွက်စာတမ်းများကို ဤနေရာတွင် ရှာဖွေနိုင်ပါသည်။
ထပ်လောင်းအရင်းအမြစ်များ
အောက်ဖော်ပြပါ သင်ခန်းစာများသည် Python ရှိ အခြားသော ဘုံအမှားများကို မည်သို့ပြင်ဆင်ရမည်ကို ရှင်းပြသည်-
Pandas တွင် KeyError ကိုဘယ်လိုပြင်မလဲ။
ပြင်ဆင်နည်း- ValueError- float NaN ကို int အဖြစ်သို့ ပြောင်းလဲ၍မရပါ။
ပြုပြင်နည်း- တန်ဖိုးအမှား- Operands များကို ပုံသဏ္ဍာန်များဖြင့် ထုတ်လွှင့်၍မရပါ။