function creating new vector

5 views (last 30 days)
Lee
Lee on 3 May 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

Answers (2)

Carlos
Carlos on 3 May 2013
Edited: Carlos on 3 May 2013
if 0<x(1,i)<1
should be
if x(1,i)>0 && x(1,i)<1

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

Tags

Community Treasure Hunt

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

Start Hunting!