function creating new vector

3 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;

Categories

Find more on Graphics Object Programming in Help Center and File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!