Advertisement
edward4324

laba)

Mar 30th, 2021
236
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
MatLab 3.50 KB | None | 0 0
  1. clc;
  2. clear;
  3. close;
  4. %%1генерация выборки по варианту
  5. N = 10000;
  6. a = 8;
  7. b = 12;
  8. X = random('Uniform', a, b, 1, N);
  9. %%2.1
  10. me = mean(X);
  11. d_i = var(X);
  12. d_ni = var(X, 1);
  13. vsr_i = sqrt(d_i);
  14. vsr_ni = sqrt(d_ni);
  15. X_min = min(X);
  16. X_max = max(X);
  17.  
  18. %%2.2 в тетради
  19.  
  20. %%2.3 тетрадь
  21.  
  22. %%2.4
  23. %Найти среднее от выборочного среднего и среднее от исправленной выборочной дисперсии по
  24. % 1000 штук выборочных реализаций объемом 10000. Сравнить полученные значения с
  25. % математическим ожиданием и дисперсией того распределения, из которого выборка
  26. % генерировалась.
  27.  
  28. X_1000 = zeros(1, N);
  29. me_1000 = zeros(1,1000);
  30. d_i_1000 = zeros(1,1000);
  31.  
  32. for i = 1:1000
  33.    
  34.     X_1000 = random('Uniform', a, b, 1, N);
  35.     me_1000(i) = mean(X_1000);
  36.     d_i_1000(i) = var(X_1000);
  37.    
  38.     clear X_1000;
  39.    
  40. end
  41.  
  42. me_1000_e = mean(me_1000);
  43. d_i_1000_e = mean(d_i_1000);
  44.  
  45. clear i;
  46. clear me_1000;
  47. clear d_i_1000;
  48.  
  49. %3 расчет гистограммы
  50.  
  51. r = floor(log2(N) + 1);
  52. h = (X_max - X_min) / r;
  53.  
  54. z = zeros(0,r);
  55.  
  56. for i = 0:r
  57.     z(i+1) = X_min + i*h;
  58. end
  59.  
  60. clear i;
  61.  
  62. z1 = zeros(1, r);
  63.  
  64. for i = 1:r
  65.     z1(i) = z(i+1) - h/2;
  66. end
  67.  
  68. clear i;
  69.  
  70. U = hist(X, z1);
  71.  
  72. H = U / (h*N);
  73.  
  74. x = (0:0.01:20);
  75. f = pdf('Uniform', x, a, b);
  76.  
  77. figure;
  78. bar(z1, H, 1);
  79. hold on
  80. plot(x,f);
  81. hold off
  82. title('Гистограмма относительных частот');
  83. legend({'Гистограмма относительных частот','График плотность вер. теор. распределения'},'Location','southwest')
  84.  
  85. %4
  86. % Выполнить расчет выборочного среднего и выборочной дисперсии по группированным данным
  87. % (использовать группированные данные, полученные при расчете гистограммы) и сравнить их со
  88. % значениями выборочных характеристик, полученными в п. 2.
  89.  
  90. me_gr = mean(z1);
  91. d_gr = var(z1);
  92. vsr_gr = sqrt(d_gr);
  93.  
  94. if (me_gr < me)
  95.     disp("Матожидание группированных значений меньше негруппированных");
  96. else
  97.     disp("Матожидание группированных значений больше негруппированных");
  98. end
  99.  
  100.  
  101. if (d_gr < d_i)
  102.     disp("Дисперсия группированных значений меньше негруппированных");
  103. else
  104.     disp("Дисперсия группированных значений больше негруппированных");
  105. end
  106.  
  107.  
  108. if (vsr_gr < vsr_i)
  109.     disp("Выборочное среднее группированных значений меньше негруппированных");
  110. else
  111.     disp("Выборочное среднее группированных значений больше негруппированных");
  112. end
  113.  
  114. %5 эмпирическая ф.р.
  115.  
  116. y = unifcdf(x, a, b);
  117.  
  118. figure;
  119. hold on
  120. ecdf(X);
  121. ecdf(z1);
  122. plot(x,y);
  123. hold off
  124. title('Эмпирическая функция распределения');
  125. legend({'эмп. Ф.р. по негрупп. данным','эмп. Ф.р. по групп. данным', 'теор. ф.р.'},'Location','southwest')
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement