亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

在字典中查找最小值 - TypeError int object not callable

在字典中查找最小值 - TypeError int object not callable

呼如林 2022-07-26 16:08:39
我的 ML 課程讓我在決策樹中找到錯誤值最小的葉子。葉子和錯誤值存儲在字典中(輸出下方){5: 35044.51299744237, 25: 29016.41319191076, 50: 27405.930473214907, 100: 27282.50803885739, 250: 27893.822225701646, 500: 29454.18598068598}現在,這本詞典中的最優解應該是 100,因為它的錯誤率最低。代碼片段如下:candidate_max_leaf_nodes = [5, 25, 50, 100, 250, 500]for i in candidate_max_leaf_nodes:#stores key,value pair of leaf_nodes, and their error values    mydict[i] = get_mae(i,train_X,val_X,train_y,val_y)print(mydict)#  Find the best value of max_leaf_nodes (it will be either 5, 25, 50, 100, 250 or 500)我嘗試最小值的代碼如下:tmp = min(mydict.values()) best_tree_size = [key for key in mydict if mydict[key] == tmp] 但是,我不斷收到TypeError : 'int' object is not callable。有人可以解釋我哪里出錯了嗎?我可以以更優化的方式找到最小值嗎?
查看完整描述

3 回答

?
陪伴而非守候

TA貢獻1757條經驗 獲得超8個贊

您必須定義了一個名為 的整數變量min。不要這樣做(或del min在調用min()函數之前)。



查看完整回答
反對 回復 2022-07-26
?
白衣非少年

TA貢獻1155條經驗 獲得超0個贊

嘗試這個


my_dict = {'x':500, 'y':5874, 'z': 560}


key_min = min(my_dict.keys(), key=(lambda k: my_dict[k]))


查看完整回答
反對 回復 2022-07-26
?
千巷貓影

TA貢獻1829條經驗 獲得超7個贊

TypeError:“int”對象不可調用

由于這表示 TypeError,這可能是因為為 my_dict 返回的值可能是“Int”而不是“Dict”。您的代碼似乎沒有錯誤。檢查字典是否正確。你的代碼對我有用。

mydict = {'a':50, 'b':500, 'c': 50, 'd':5000, 'e':50000, 'f': 50}

tmp = min(mydict.values())

best_tree_size = [key for key in mydict if mydict[key] == tmp]

print(best_tree_size)

['a', 'c', 'f']


查看完整回答
反對 回復 2022-07-26
  • 3 回答
  • 0 關注
  • 133 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號