ပြင်ဆင်နည်း- 'numpy.float64' အရာဝတ္ထုသည် ထပ်၍မရနိုင်ပါ။
NumPy ကိုအသုံးပြုရာတွင် သင်ကြုံတွေ့ရနိုင်သည့် အမှားတစ်ခုမှာ-
TypeError : 'numpy.float64' object is not iterable
မဖြစ်နိုင်သော NumPy ရှိ float တန်ဖိုးတစ်ခုအပေါ် ထပ်ခါတလဲလဲ လုပ်ဆောင်ရန် သင်ကြိုးစားသောအခါ ဤအမှားသည် ဖြစ်ပေါ်လာပါသည်။
အောက်ဖော်ပြပါ ဥပမာသည် ဤအမှားကို လက်တွေ့ဖြေရှင်းနည်းကို ပြသထားသည်။
အမှားကို ဘယ်လိုပြန်ထုတ်မလဲ။
ကျွန်ုပ်တို့တွင် အောက်ပါ NumPy array ရှိသည်ဆိုပါစို့။
import numpy as np #define array of data data = np. array ([1.3, 1.5, 1.6, 1.9, 2.2, 2.5]) #display array of data print (data) [1.3 1.5 1.6 1.9 2.2 2.5]
ယခု ကျွန်ုပ်တို့သည် array ရှိ တန်ဖိုးတစ်ခုစီ၏ ပေါင်းလဒ်ကို print ထုတ်ရန် ကြိုးစားသည်ဆိုပါစို့။
#attempt to print the sum of every value
for i in data:
print (sum(i))
TypeError : 'numpy.float64' object is not iterable
array ရှိ float value တစ်ခုစီတွင် တစ်ခုချင်းစီအပေါ် ထပ်တလဲလဲ (တန်ဖိုးများ၏ ပေါင်းလဒ်များကို) ထပ်ခါတလဲလဲ ကြိုးစားခဲ့သောကြောင့် အမှားအယွင်းတစ်ခု ရရှိခဲ့ပါသည်။
အမှားကိုဘယ်လိုပြင်မလဲ။
ကျွန်ုပ်တို့သည် ဤအမှားကို နည်းလမ်းနှစ်မျိုးဖြင့် ရှောင်ရှားနိုင်သည်-
1. array ရှိ တန်ဖိုးတစ်ခုစီတွင် ထပ်တလဲလဲမဟုတ်သော လုပ်ဆောင်ချက်ကို လုပ်ဆောင်ပါ။
ဥပမာအားဖြင့်၊ ကျွန်ုပ်တို့သည် array တွင် တန်ဖိုးတစ်ခုစီကို print ထုတ်နိုင်သည်-
#print every value in array
for i in data:
print (i)
1.3
1.5
1.6
1.9
2.2
2.5
ကျွန်ုပ်တို့သည် တန်ဖိုးတစ်ခုစီတွင် ထပ်တလဲလဲမကြိုးစားသောကြောင့် အမှားအယွင်းတစ်ခုမရရှိပါ။
2. Multi-dimensional array တွင် ထပ်တလဲလဲလုပ်ဆောင်ပါ။
Multi-dimensional array တစ်ခုပေါ်တွင် ထပ်တလဲလဲလုပ်ဆောင်ခြင်းဖြင့် အမှားအယွင်းတစ်ခုကို ရှောင်ရှားနိုင်သည်-
#create multi-dimensional array
data2 = np. array ([[1.3, 1.5], [1.6, 1.9], [2.2, 2.5]])
#print sum of each element in array
for i in data2:
print (sum(i))
2.8
3.5
4.7
Multi-dimensional array တစ်ခုပေါ်တွင် sum() function ကိုအသုံးပြုခြင်းသည် အဓိပ္ပါယ်ရှိသောကြောင့် အမှားအယွင်းတစ်ခုမဖြစ်ပါ။
အထူးသဖြင့်၊ NumPy သည် ပေါင်းလဒ်တန်ဖိုးများကို တွက်ချက်ပုံဖြစ်သည်။
- 1.3 + 1.5 = 2.8
- 1.6 + 1.9 = 3.5
- 2.2 + 2.5 = 4.7
ထပ်လောင်းအရင်းအမြစ်များ
အောက်ဖော်ပြပါ သင်ခန်းစာများသည် Python ရှိ အခြားသော ဘုံအမှားများကို မည်သို့ပြင်ဆင်ရမည်ကို ရှင်းပြသည်-
Pandas တွင် KeyError ကိုဘယ်လိုပြင်မလဲ။
ပြင်ဆင်နည်း- ValueError- float NaN ကို int အဖြစ်သို့ ပြောင်းလဲ၍မရပါ။
ပြုပြင်နည်း- တန်ဖိုးအမှား- Operands များကို ပုံသဏ္ဍာန်များဖြင့် ထုတ်လွှင့်၍မရပါ။