Advertisement
Belial_Alu

matlab_3

Jun 9th, 2023
1,064
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
MatLab 6.22 KB | None | 0 0
  1. clear
  2. clc
  3. % Часть 1. Критерии согласия
  4. % Критерий согласия — это статистическое правило,
  5. % по которому принимается или отвергается статистическая
  6. % гипотеза о том, что исследуемая случайная величина
  7. % подчиняется заданному эмпирическому закону распределения.
  8.  
  9. %1. Критерий согласия хи квадрат- Пирсона
  10. % позволяет проверить значимость расхождения эмпирических (наблюдаемых)
  11. % и теоретических (ожидаемых) частот
  12.  
  13. %Равномерное a=-3, b=5
  14. N=10000;
  15. a = -3;
  16. b = 5;
  17.  
  18. %1.1 генерируем выборку
  19. X=random('Uniform', a, b, N, 1);
  20.  
  21. %1.2 Рассчитать значение статистики для критерия
  22. X_max=max(X);
  23. X_min=min(X);
  24. r=floor(log2(N))+1; %кол-во инт-лов группировки
  25. h=(X_max-X_min)/r; %длина каждого инт-ла группировки
  26.  
  27. for i = 0:r
  28.     z(i+1) = X_min+i*h; %массив границ z инт-лов группировки
  29. end
  30.  
  31. for i=1:r
  32.     z1(i) = z(i+1)-h/2; %середины инт-лов полученные из границ инт-лов
  33. end
  34.  
  35. U=hist(X,z1); %кол-во элементов в каждом интервале
  36.  
  37. %рассчитываем вер-ть попадания в i-тый интервал разбиения
  38. for i = 1:r
  39.     p(i) = cdf('Uniform', z(i+1), a, b) - cdf('Uniform', z(i), a, b);
  40. end
  41.  
  42. G = 0;
  43. for i=1:r
  44.     %U(i) кол-во выбор. знач., попавших в i-тый интервал разбиения
  45.     %p(i) вер-ть попадания выб.знач. в i-тый интервал разбиения
  46.     G = G + (((U(i)-N*p(i)).^2))/(N*p(i)); % критерий согласия Пирсона
  47. end
  48.  
  49. %1.3. Определить при уровнях значимости 0,1, 0,05, 0,01 критические значения
  50.  
  51. % Уровень значимости — это вероятность ошибочного отклонения выдвинутой
  52. % гипотезы, т.е. вероятность того, что будет отвергнута правильная гипотеза
  53.  
  54. % число степеней свободы
  55. k = r-1 % формула r-n-1 (r-кол-во интервалов, n-число параметров распределения, подбираемых параметров нет)
  56. p1 = 0.1;
  57. p2 = 0.05;
  58. p3 = 0.01;
  59.  
  60. % критические значения с помощью обратной кумулятивной функции хи квадрат,
  61. % при различных уровнях значимости
  62. G1=chi2inv(1-p1, k);
  63. G2=chi2inv(1-p2, k);
  64. G3=chi2inv(1-p3, k);
  65.  
  66. % критические значения по таблице
  67. G_t1=19.8; % для 0.1
  68. G_t2=22.4; % для 0.05
  69. G_t3=27.7;% для 0.01
  70.  
  71. %2. Критерий Колмогорова (только для непрерывных СВ)
  72. % распределение супремума разности между теор и эмп ф-ями одинаково
  73.  
  74. %2.1. Рассчитать значение статистики для критерия Колмогорова(значения эмпирической и теоретической функциями распределения).
  75. x = [X_min:0.001:X_max];
  76. F_teor=cdf('Uniform', x, a, b);
  77. for i=1:length(x)
  78.     F_emp(i)=0;
  79.     for j=1:N
  80.         if (X(j) < x(i))
  81.             F_emp(i)=F_emp(i)+1;
  82.         end
  83.     end
  84.     F_emp(i)=F_emp(i)/N;
  85. end
  86.  
  87. %ищем супремум
  88. Max_d=0;
  89. for i=1:length(x)
  90.     if(abs(F_teor(i)-F_emp(i))>Max_d)
  91.         Max_d=abs(F_teor(i)-F_emp(i));
  92.     end
  93. end
  94.  
  95. D=sqrt(N)*Max_d; %значение статистики
  96.  
  97. %2.2. Определить при уровнях значимости 0,1, 0,05, 0,01 критические значения
  98. D_cr1=1.23; %0.1
  99. D_cr2=1.36; %0.05
  100. D_cr3=1.63; %0.01
  101.  
  102.  
  103. % Часть 2. Проверка гипотезы о коэффициенте корреляции
  104.  
  105. % Коэффициент корреляции - показатель, характеризующий статистическую
  106. % связь между двумя или несколькими случайными величинами
  107.  
  108. % коэф-т корреляции не значим, т.е. равен 0
  109.  
  110.  
  111. % 3.1
  112. X = random('Uniform', a, b, N, 1);
  113.  
  114. % 3.2
  115. Y = random('Uniform', a, b, N, 1);
  116.  
  117. % 3.3
  118. p = mean((X-mean(X)).*(Y-mean(Y)))/(sqrt(var(X)*var(Y))); % коэффициент корреляции
  119.  
  120. % Вывод:
  121. % Т.к. коэф-т корреляции близок к 0, то между СВ слабая корреляция,
  122. % т.е. поведение СВ X почти совсем не влияет на поведение Y (и наоборот)
  123.  
  124. % 3.4
  125. T = p*sqrt(N-2)/sqrt(1-p^2); % значение статистики Т
  126.  
  127. % 3.5 критические значения (по таблицам распределения Стьюдента)
  128. T_1 = 1.64; %0.1
  129. T_2 = 1.96; %0.05
  130. T_3 = 2.58; %0.01
  131.  
  132. %Y=2*X+b b -выборка из нормального распределения с мат ожиданием 0 и
  133. % среднеквадратическим отклонением σ=0.001, 100, 1000
  134.  
  135. % для 0.001
  136. b1 = random("Normal", 0, 0.001, N, 1);
  137. Y1 = 2*X + b1;
  138. p1 = mean((X-mean(X)).*(Y1-mean(Y1)))/(sqrt(var(X)*var(Y1)));
  139. T1 = p1*sqrt(N-2)/sqrt(1-p1^2);
  140.  
  141. % Вывод:
  142. % Т.к. коэф-т корреляции близок к 1, то между СВ положительная корреляция,
  143. % т.е. высокая степень связи и, если зн-я X будут возрастать, то и зн-я Y1
  144. % также будут увеличиваться
  145.  
  146. % для 100
  147. b2 = random("Normal", 0, 100, N, 1);
  148. Y2= 2*X + b2;
  149. p2 = mean((X-mean(X)).*(Y2-mean(Y2)))/(sqrt(var(X)*var(Y2)));
  150. T2 = p2*sqrt(N-2)/sqrt(1-p2^2);
  151.  
  152. % для 1000
  153. b3 = random("Normal", 0, 1000, N,1);
  154. Y3 = 2*X + b3;
  155. p3 = mean((X-mean(X)).*(Y3-mean(Y3)))/(sqrt(var(X)*var(Y3)));
  156. T3 = p3*sqrt(N-2)/sqrt(1-p3^2);
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement