我有以下代碼:
from scipy.interpolate import UnivariateSpline
from scipy.optimize import fmin
a = UnivariateSpline(b,c) #Python
d = fmins(@(t) -ppval(a,t), someexpression); #Matlab where fmin is equivalent to fmins
如何將其翻譯成 Python3?
uj5u.com熱心網友回復:
@(t) -ppval(a,t)在 Matlab 中是一個匿名函式
您可以在 python 中使用lambda 函式類似地表示事物。
通過這里的示例,我看到 的輸出UnivariateSpline
是可呼叫的,那么類似的 python 是lambda t: -a(t).
但是你會有更多的問題fmins是沒有定義然后你可能想要檢查scipy.optimize包中的替代方案。
uj5u.com熱心網友回復:
fmin的檔案告訴我們它的第一個引數必須是函式,第二個引數是初始值,所以它和 MATLAB 中的完全一樣。在這種情況下,您應該可以致電
d = fmin(lambda x: -a(x), someexpression)
轉載請註明出處,本文鏈接:https://www.uj5u.com/net/477035.html
上一篇:在面向物件編程中列印字串
