Not enough input arguments
4 次查看(过去 30 天)
显示 更早的评论
Hi, i need help. When i try to run this line of code,
function [prob, mean_val, one_std, two_std, area] = calcProbs(pdf, a, b, mu1, sigma1, mu2, sigma2)
% Integrate the probability density function over the interval [a, b] to get the probability
prob = integral(pdf, a, b);
An error shows which says,
>> calcProbs(pdf, a, b, mu1, sigma1, mu2, sigma2)
Error using pdf
Requires at least two input arguments.
Im not sure where im going wrong.
6 个评论
Torsten
2023-12-12
% Script part
pdf = ...
a = ...
b = ...
mu1 = ...
sigma1 = ...
mu2 = ...
sigma2 = ...
[prob, mean_val, one_std, two_std, area] = calcProbs(pdf, a, b, mu1, sigma1, mu2, sigma2)
% function part
function [prob, mean_val, one_std, two_std, area] = calcProbs(pdf, a, b, mu1, sigma1, mu2, sigma2)
...
end
回答(1 个)
Aiswarya
2023-12-18
Hi Sumayya,
I understand that you want to create a function which calculate probabilities based on a probability density function ("pdf") given as input. The error "Error using pdf. Requires at least two input arguments." is because you haven't defined the variables for your inputs before calling the function. So the term 'pdf' refers to the following inbuilt function in MATLAB : https://www.mathworks.com/help/stats/prob.normaldistribution.pdf.html
This function gets invoked when you use the term 'pdf'. The minimum number of arguments for this function is 2 and hence the error.
This can be solved by initializing the variable 'pdf' properly before calling the function 'calcProbs' or a better alternative would be to rename the variable.
Also, you should define your all input arguments in the workspace before calling your function, in order for your function call to work.
0 个评论
另请参阅
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!