r-help-es@r-project.org

Hola!!

Estoy trabajando con una función del tipo h(x)'B, donde h(x) es un vector
columna  de q entradas, de igual manera B es un vector columna de dimensión
q.

Quiero graficar h(x)'B para alguna h(x), por ejemplo



h<-function(x) matrix(c(1,x,x^2,x^3), ncol=1)

B es un vector columna fijo

B=matrix(c(1,2,1,3),ncol=1)



Para graficar la función h(x)'B lo que hago es hacer una función nueva

hB<-function(x){t(h(x))%*%B}

para valores particulares de x la función hace lo que busco


> h<-function(x) matrix(c(1,x,x^2,x^3), ncol=1)

> B=matrix(c(1,2,1,3),ncol=1)

> hB<-function(x){t(h(x))%*%B}

> hB(1)

     [,1]

[1,]    7

> hB(2)

     [,1]

[1,]   33

Sin embargo cuando intento graficar, me marca un error

> y1=seq(-2,2,0.01)

> plot(y1,hB(y1))

Error in t(h(x)) %*% B : non-conformable arguments

Entiendo que primero evalúa en la función h y después multiplica por B y
por ende hay un error en las dimensiones. Pero no se que hacer para que la
función se evalúe entrada por entrada del vector y1, creo que usar alguna
forma vectorizada ayudaría, pero no se como hacerlo.

Ayuda por favor :)












-- 
Atte
Irma

	[[alternative HTML version deleted]]

