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

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

除以更大的減法值

除以更大的減法值

一只甜甜圈 2022-10-11 16:05:07
我有兩個形狀矩陣(43, 25520),它們被稱為m1和m2。if m1 <= m2:    distance = (m1 - m2) / m2else:    distance = (m1 - m2) / m1因此,對于每個 index i,我想從中減去m2[i],m1[i]然后除以這兩個中的較大值。我的錯誤信息是ValueError: The truth value of an array with more than one element is ambiguous. Use a.any() or a.all()如何修復錯誤并完成我想要的。
查看完整描述

1 回答

?
泛舟湖上清波郎朗

TA貢獻1818條經驗 獲得超3個贊

np.maximum返回兩個矩陣的元素最大值:

(m1 - m2) / np.maximum(m1, m2)

如果您只想要小于一的正值,請使用np.absolute

np.absolute((m1 - m2) / np.maximum(m1, m2))

或者,你可以做

(np.maximum(m1, m2) - np.minimum(m1, m2)) / np.maximum(m1, m2))

您收到錯誤的原因是該表達式m1 >= m2是一個與兩個數組大小相同的布爾掩碼。您不能將大量布爾值轉換為單個布爾值,即使可以,and 中的表達式ifelse可以對整個數組進行操作。您需要對條件進行矢量化,我已經向您展示了如何執行此操作。


查看完整回答
反對 回復 2022-10-11
  • 1 回答
  • 0 關注
  • 96 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號

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