Syntax Error: Unknown Function

2 次查看(过去 30 天)
Hi, for the following code:
n = 50000;
g = 0.3;
x = [];
for i=1:n
k = 0;
while unifrnd(0,1) < g
k = k + 1;
end
b = 0;
mynumber = 2;
for j = 1:k
switch mynumber
case 1
v = random(beta,3,3)
case 2
v = random(gam,5,5)
case 3
v = random(exp,3)
case 4
v = random(geo,0.2)
case 5
v = random(unif,0,5)
case 6
v = random(norm,0,1)
end
b = b + v;
end
if b ~= 0
x = [x, b];
end
end
I get the following error: Undefined function or variable 'gam'.
Error in test (line 21) v = random(gam,5,5)
why is that? Thanks

采纳的回答

Azzi Abdelmalek
Azzi Abdelmalek 2013-5-29
You can tell us what is the value of gam?
  5 个评论
MiauMiau
MiauMiau 2013-5-29
ah..so that's it. I will try it

请先登录,再进行评论。

更多回答(1 个)

Muruganandham Subramanian
  3 个评论
Muruganandham Subramanian
see, You hav to declare the variable 'gam' and others as global or local, then only you can call it..
MiauMiau
MiauMiau 2013-5-29
But "gam" is just an already defined distribution in matlab...as "normrnd(.." since when has this decleration to be done? And where do I have to do it?

请先登录,再进行评论。

Community Treasure Hunt

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

Start Hunting!

Translated by