Domanda passare argomenti a una funzione in un singolo vettore


Ho creato la seguente funzione:

nDone<- function (under,strike,ttoe,vol,rf,dy) pnorm(((log(under/strike)+
  (rf-dy+(vol^2)/2)*ttoe)/(vol*(ttoe^0.5))))

Quindi chiamo la funzione con il seguente:

nDone(90,100,3,0.17,0.05,0)

Risultato

[1] 0.6174643

Ok finora erano tutti buoni.

Ora creo un vettore con gli stessi valori in un oggetto:

d<- c(90,100,3,0.17,0.05,0)

e provo a chiamare la funzione usando l'oggetto.

nDone(d)

E ottengo il seguente errore.

Error in under/strike : 'strike' is missing

Cosa sto sbagliando e come risolvere?

Grazie

RSG


22
2018-02-10 22:35


origine


risposte:


Prova questo

 do.call(nDone, as.list(d))

29
2018-02-10 22:45