Matlab cannot produce result

.
function Y = myFunction(d,n,theta)
Y = coinflip(100,100,0.25);
d = 100;
n = 100;
theta = 0.25;
Y = [ ];
for Dloop = 1:d
for Nloop = 1:n
X =randn(1);
Y = [Y;X];
end
end
Y(Y<theta) = 0;
Y(Y>theta) = 1;
histogram(Y)
(I get some errors as below -)
function Y = myFunction(d,n,theta)
Error: Function definition not supported in this context.
Create functions in code file.
(another error is as below)
Error in myFunction (line 2)
Y = coinflip(100,100,0.25);
(other error is as below)
Y = coinflip(100,100,0.25);
Undefined function or variable 'coinflip'.
.
Here please help me to modify the errors and able to produce one correct output graph
.

15 commentaires

The error messages are very descriptive. You cannot create a function in the command window and coinflip is not defined.
You probably meant to do this:
d= 100;
n = 100;
theta = 0.25;
output = coinflip(d,n,theta);
function Y = coinflip(d,n,theta)
Y = zeros(d*n, 1);
for Nloop = 1:n
for Dloop = 1:d
Y(Nloop*Dloop) = rand;
end
end
Y(Y<theta) = 0;
Y(Y>theta) = 1;
histogram(Y)
end
You should also preallocate Y as I showed. Not sure why you want a nested for loop or what your plans are though.
vokoyo
vokoyo le 4 Mai 2018
Modifié(e) : vokoyo le 4 Mai 2018
To Jasper Gerritsen
Your programming is not correct
Undefined function or variable 'coinflip'.
sloppydisk
sloppydisk le 4 Mai 2018
That's because you pasted it into the command window. You can't define functions in there, so instead you should save the code as an m-file and execute it in the editor.
vokoyo
vokoyo le 4 Mai 2018
Modifié(e) : vokoyo le 4 Mai 2018
I understand but get same problems
Undefined function or variable 'coinflip'.
Can I use another code - do not want using function
Image Analyst
Image Analyst le 4 Mai 2018
Then define it. It's not built into MATLAB, so you need to define what that function does.
vokoyo
vokoyo le 4 Mai 2018
Modifié(e) : vokoyo le 4 Mai 2018
How to define
Please do not waste any time
Write useful code show to me and save time
sloppydisk
sloppydisk le 4 Mai 2018
Much love to you my man, but I hope you will adopt a better attitude, because I don't think you're going to learn much this way.
vokoyo
vokoyo le 4 Mai 2018
I understand but I need to finish my task urgently
Other people they talk so many but mostly useless
Please help as best as you can
Image Analyst
Image Analyst le 4 Mai 2018
He already did help you and wrote some code that seems like it does what you want to do. I ran it (the attached code) and it ran fine. What did you do differently????
sloppydisk
sloppydisk le 4 Mai 2018
He pasted it into the command window :D
vokoyo
vokoyo le 4 Mai 2018
Modifié(e) : vokoyo le 4 Mai 2018
function Y = myFunction(d,n,theta)
Y = coinflip(100,100,0.25);
d = 100;
n = 100;
theta = 0.25;
Y = [ ];
for Dloop = 1:d
for Nloop = 1:n
X = randn(1);
Y = [Y;X];
end
end
Y(Y<theta) = 0;
Y(Y>theta) = 1;
histogram(Y)
Now I can run but the output graph why show some negative numbers?
vokoyo
vokoyo le 4 Mai 2018
Kindly please refer to the attached file - Computer Project
There are no negative numbers. There is a bar centered at 0 with 8000 counts, and one centered at 1 with 2000 counts. If you want the x axis to show only the bar centers, then add this line as the last line of your coinflip() function:
xticks(0:1)
vokoyo
vokoyo le 5 Mai 2018
Modifié(e) : vokoyo le 5 Mai 2018
Sorry I cannot understand
Can you please show all the detail information
I would like to compare it to the two graphs (in attached file Question 2)
vokoyo
vokoyo le 5 Mai 2018
Modifié(e) : vokoyo le 5 Mai 2018
Matlab Programming - I am not sure how to modify it to get the two graphs in Question 2
(1)
function Y = myFunction(d,n,theta)
Y = coinflip(100,100,0.25);
d = 100;
n = 100;
theta = 0.25;
Y = [ ];
for Dloop = 1:d
for Nloop = 1:n
X =rand(1);
Y = [Y;X];
end
end
Y(Y<theta) = 0;
Y(Y>theta) = 1;
histogram(Y)
xticks(0:1)
function Y = myFunction(d,n,theta)
Y = coinflip(100,100,0.5);
d = 100;
n = 100;
theta = 0.5;
Y = [ ];
for Dloop = 1:d
for Nloop = 1:n
X =rand(1);
Y = [Y;X];
end
end
Y(Y<theta) = 0;
Y(Y>theta) = 1;
histogram(Y)
xticks(0:1)
(2)
function Y = myFunction(d,n,theta)
Y = coinflip(10,1000,0.25);
d = 10;
n = 1000;
theta = 0.25;
Y = [ ];
for Dloop = 1:d
for Nloop = 1:n
X =rand(1);
Y = [Y;X];
end
end
Y(Y<theta) = 0;
Y(Y>theta) = 1;
histogram(Y)
xticks(0:1)
function Y = myFunction(d,n,theta)
Y = coinflip(10,1000,0.5);
d = 10;
n = 1000;
theta = 0.5;
Y = [ ];
for Dloop = 1:d
for Nloop = 1:n
X =rand(1);
Y = [Y;X];
end
end
Y(Y<theta) = 0;
Y(Y>theta) = 1;
histogram(Y)
xticks(0:1)
(3)
function Y = myFunction(d,n,theta)
Y = coinflip(100,1000,0.25);
d = 100;
n = 1000;
theta = 0.25;
Y = [ ];
for Dloop = 1:d
for Nloop = 1:n
X =rand(1);
Y = [Y;X];
end
end
Y(Y<theta) = 0;
Y(Y>theta) = 1;
histogram(Y)
xticks(0:1)
function Y = myFunction(d,n,theta)
Y = coinflip(100,1000,0.5);
d = 100;
n = 1000;
theta = 0.5;
Y = [ ];
for Dloop = 1:d
for Nloop = 1:n
X =rand(1);
Y = [Y;X];
end
end
Y(Y<theta) = 0;
Y(Y>theta) = 1;
histogram(Y)
xticks(0:1)

Connectez-vous pour commenter.

Réponses (0)

Tags

Question posée :

le 4 Mai 2018

Modifié(e) :

le 5 Mai 2018

Community Treasure Hunt

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

Start Hunting!

Translated by