[英]Taking values from a dataframe dictionary
我已將數據幀轉換為字典,並已將其中一個字典值用於'for'函數,但是它給我以下錯誤?
df =
Metal Medium Carbon Steel
Max Compressive Stress/MPa 305
Cost per m^3/$ 4301
I/mm^4 3.27869e+07
inner_radius_quarted 5.82544e+07
inner_radius/mm 87.3639
thickness/mm 12.6361
volume/mm^3 12636.1
cost/$ 0.0543477
a1 = df.to_dict()
P = [P -1,P +1]
for i in P:
x = (i * L * y) / (a1[1][u'I/mm^4'] * 4)
if x > a1[1][u'Max Compressive Stress/MPa']:
print "A point load of", i, ", will break the beam"
else:
print "A point load of", i, ", will not break the beam"
KeyError Traceback (most recent call last)
<ipython-input-255-8d9325dc6d75> in <module>()
2
3 for i in P:
----> 4 x = (i * L * y) / (a1[1][u'I/mm^4'] * 4)
5 if x > a1[1][u'Max Compressive Stress/MPa']:
6 print "A point load of", i, ", will break the beam"
KeyError: 1
你有沒有看着a1
。 它並不能完全成為您所需要的。
{'Medium Carbon Steel': {'Cost per m^3/$': 4301.0,
'I/mm^4': 32786900.0,
'Max Compressive Stress/MPa': 305.0,
'cost/$': 0.054347699999999999,
'inner_radius/mm': 87.363900000000001,
'inner_radius_quarted': 58254400.0,
'thickness/mm': 12.636100000000001,
'volume/mm^3': 12636.1}}
嘗試
a1 = df['Medium Carbon Steel'].to_dict()
P = [P -1,P +1]
for i in P:
x = (i * L * y) / (a1['I/mm^4'] * 4)
if x > a1['Max Compressive Stress/MPa']:
print("A point load of", i, ", will break the beam")
else:
print("A point load of", i, ", will not break the beam")
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.