Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- format compact
- format shorteng
- clc
- %% Statistische Tests
- % Anzahl durchgeführte Versuche/Stichproben
- n = 10000;
- % Anzahl zutreffende/geglückte Versuche
- x = 5150;
- % Signifikanzniveau
- alpha = 0.05;
- % Wahrscheinlichkeit
- p = 0.5;
- % Gegenwahrscheinlichkeit
- q = 1-p;
- %% Zweiseitiger Test
- % Wenn Alternativhypothese ungleich Hypothese ist
- disp '------------------------------------------------------------'
- disp 'Zweiseitiger Test'
- disp ' Wenn Alternativhypothese ungleich Hypothese ist'
- disp '------------------------------------------------------------'
- % Erwartungswert
- E = n * p;
- % Varianz
- Var = n * p * q;
- % Test ob norm. Vert. angenährt werden kann
- if Var > 9
- fprintf("Näherung durch Normalverteilung zulässig: %.1f > %.0f\n", Var, 9)
- else
- fprintf("Näherung durch Normalverteilung NICHT zulässig: %.1f < %.0f\n", Var, 9)
- end
- % Grenzen berechnen
- xu = norminv(alpha/2, E, sqrt(Var));
- xo = norminv(1 - alpha/2, E, sqrt(Var));
- % Annahmebereich testen
- fprintf("Annahmebereich: %.3f < x < %.3f\n", xu, xo);
- fprintf("x = %.3f\n", x);
- if (x < xo) && (x > xu)
- disp 'x ist im Annahmebereich'
- disp ' -> Nullhypothese annehmen'
- else
- disp 'x ist NICHT im Annahmebereich'
- disp ' -> Nullhypothese ablehnen, Alternativhypothese annehmen'
- end
- %% Einseitiger Test
- % Wenn Alternativhypothese grösser/kleiner gleich ist
- disp ' '
- disp ' '
- disp '------------------------------------------------------------'
- disp 'Einseitiger Test'
- disp ' Wenn Alternativhypothese grösser/kleiner gleich ist'
- disp '------------------------------------------------------------'
- % Erwartungswert
- E = n * p;
- % Varianz
- Var = n * p * q;
- % Test ob norm. Vert. angenährt werden kann
- if Var > 9
- fprintf("Näherung durch Normalverteilung zulässig: %.1f > %.0f\n", Var, 9)
- % Grenze berechnen
- xo = norminv(1 - alpha/2, E, sqrt(Var));
- % Annahmebereich testen
- fprintf("Annahmebereich: x < %.4f\n", xo);
- fprintf("x = %.3f\n", x);
- if (x < xo)
- disp 'x ist im Annahmebereich'
- disp ' -> Nullhypothese annehmen'
- else
- disp 'x ist NICHT im Annahmebereich'
- disp ' -> Nullhypothese ablehnen, Alternativhypothese annehmen'
- end
- else
- fprintf("Näherung durch Normalverteilung NICHT zulässig: %.1f < %.0f\n", Var, 9)
- disp '*** Binomialverteilung ***'
- % Grenze berechnen
- xo = 1 - binocdf(x-1, n, p);
- % Annahmebereich testen
- fprintf("Annahmebereich: x < %.4f\n", xo);
- fprintf("x = %.3f\n", x);
- if (x < xo)
- disp 'x ist im Annahmebereich'
- disp ' -> Nullhypothese annehmen'
- else
- disp 'x ist NICHT im Annahmebereich'
- disp ' -> Nullhypothese ablehnen, Alternativhypothese annehmen'
- end
- end
- %% Irrtumswahrscheinlichkeit
- pi = 1 - normcdf(x, E, sqrt(Var));
- fprintf("\n\nIrrtumswahrscheinlichkeit p_i = %.4f (%.2f%%)\n", pi, pi*100);
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement