/ / MATLAB: Как мога да начертая функцията Probit? - MATLAB

MATLAB: Как мога да проектирам функцията Probit? - matlab

Написах следния код, за да парцел функцията Logit, където бета = 1.

beta = 1
e(:,1) = 0:0.01:1;
e(:,2) = log(e(:,1)./(1-e(:,1)))+beta;
plot(e(:,2),e(:,1))

Доколкото мога да кажа, че изглежда добре, но аз незнаете как да добавите функцията Probit. Разбирам как да се постави на парцели в една фигура, но аз не разбирам как да генерира данни от това разпространение. Има ли някакъв удобен начин да направите това в MATLAB?

В крайна сметка искам да създам нещо като следното, в което може да се види, че Probit и Logit са много сходни.

Probit vs Logit

Отговори:

3 за отговор № 1
beta = 1
e(:,1) = 0:0.01:1;
e(:,2) = log(e(:,1)./(1-e(:,1)))+beta; % logit fn + beta
e(:,3) = sqrt(2) * erfinv(2*e(:,1) - 1) ; % probit fn
plot(e(:,1),e(:,2:3))

Както е предложено от @patrick, ако имате "Машинно обучение и статистически инструментариум", би било по-чисто да използвате norminv функция, която замества четвъртия ред с:

e(:,3) = norminv(e(:,1)) ; % probit fn