的每一行的功能我創造了這個功能:傳遞參數從矩陣
nDone<- function (under,strike,ttoe,vol,rf,dy) {
return(pnorm(((log(under/strike) + (rf-dy+(vol^2)/2)*ttoe)/(vol*(ttoe^0.5)))))
}
nDone(90,100,3,0.17,0.05,0)
[1] 0.6174643
到目前爲止,這是罰款和工作。現在我想把這個函數應用到矩陣的每一行。
b<- c(90,95,100,100,3,2,0.17,0.18,0.05,0.05,0,0)
dim(b) <- c(2,6)
其中給出:
[,1] [,2] [,3] [,4] [,5] [,6]
[1,] 90 100 3 0.17 0.05 0
[2,] 95 100 2 0.18 0.05 0
所以現在我想每一行中的元素傳遞給函數。我已經嘗試使用適用於:
apply(b,1,nDone)
並得到以下錯誤:
Error in under/strike : 'strike' is missing
我也試過:
lapply(b,nDone)
我得到以下錯誤:
Error in under/strike : 'strike' is missing
我想要的是該函數的多個結果。我在這裏做錯了什麼?
嗯....這是完全一樣的[最後](http://stackoverflow.com/questions/9235781/passing-arguments-to-a-function-in-a-single-vector)的問題。 – joran 2012-02-10 23:33:57
嗨喬蘭,我知道它看起來是一樣的,我當然不會浪費任何人的時間。在這個問題現在我試圖將矩陣的每一行傳遞給一個函數。再次感謝您的評論。 – user1181337 2012-02-10 23:43:37
是的。 @ joran對上一個問題的回答(實際上是一個評論)也應該能夠回答這個問題。他留下了一點空間來進行鬥爭/解釋。我建議你看看他的評論,看看你是否可以理解如何處理它,然後(如果你不能)回來並要求澄清那裏... – 2012-02-10 23:59:52