function creating new vector

1 visualizzazione (ultimi 30 giorni)
Lee
Lee il 3 Mag 2013
i need to create a function that has an input of vector with 10 elements and it creates a new vector containing only elements between 0 and 1 times 2 minus 1 i cant figure out what i did wrong
function likelehood=like(x) counter=0; w=zeros(1,10); for i=1:10 if 0<x(1,i)<1; counter=counter+1; w(1,counter)=(2*x(1,i)-1)+w(1,i); end likelehood=w; end

Risposte (2)

Carlos
Carlos il 3 Mag 2013
Modificato: Carlos il 3 Mag 2013
if 0<x(1,i)<1
should be
if x(1,i)>0 && x(1,i)<1

Youssef  Khmou
Youssef Khmou il 3 Mag 2013
hi, try this function :
function y=likelihood(x)
T=x((x>0)&(x<1));
y=2*T-1;

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by