我有一個函數:可選參數
cost(X, model, reg = 1e-3, sparse)
,我需要這個函數傳遞到另一個形式下:
f(X, model)
f(X, model, reg = reg)
我使用lambda來做到這一點:
f = lambda X, model: cost(X, model, sparse = np.random.rand(10,10))
和python抱怨lambda有一個意外的論據reg。我如何正確地做到這一點?
如果我做的其他方式:
f = lambda X, model, reg: cost(X, model, reg = reg, sparse = np.random.rand(10,10))
,則它不會在第一種情況下工作。
在函數調用中,關鍵字參數必須跟隨位置參數。所以我認爲你的「成本」函數應該類似於成本(X,model,reg = 1e-3,sparse ='somethingelse'或'cost(X,model,sparse,req = 1e-3)' – poros