Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

СОИ_Лаба_1

.docx
Скачиваний:
12
Добавлен:
18.12.2019
Размер:
674.42 Кб
Скачать

МИНИСТЕРСТВО ОБРАЗОВАНИЯ И НАУКИ РОССИЙСКОЙ ФЕДЕРАЦИИ

Федеральное государственное автономное образовательное учреждение высшего образования

«САНКТ-ПЕТЕРБУРГСКИЙ УНИВЕРСИТЕТ АЭРОКОСМИЧЕСКОГО ПРИБОРОСТРОЕНИЯ»

КАФЕДРА № 41

ОТЧЕТ ЗАЩИЩЕН С ОЦЕНКОЙ

ПРЕПОДАВАТЕЛЬ

доцент

Е.А. Бакин

должность, уч. степень, звание

подпись, дата

инициалы, фамилия

ОТЧЕТ О ЛАБОРАТОРНОЙ РАБОТЕ №1

Точечное оценивание моментов случайной величины

по курсу: Статистическая обработка информации

РАБОТУ ВЫПОЛНИЛ

СТУДЕНТ ГР. №

4616

А.В.Павлов

подпись, дата

инициалы, фамилия

Санкт-Петербург 2018

Цель работы

Ознакомление со способами моделирования случайных чисел с заданным законом распределения в современных математических пакетах, получение навыков нахождения выборочных моментов случайной величины и получение навыков наглядного представления результатов статистической обработки данных.

Вариант 7

Экспоненциальное

Рисунок 1- График плотности вероятностей

Рисунок 2 – График интегральной функции распределения случайной величины

  1. Аналитический расчет

Плотность вероятности:

Функция распределения

Мат ожидание

Дисперсия

Среднеквадратичное отклонение

4 центральный момент

  1. Описание разработанной программы

Имя переменной

Тип

Назначение

t

Список

Список от 0 до 1000 с шагом 1

choose

Целочисленное

Выбор варианта

En,enn

Список

Список из точек для лог графика ,список из всех лог графика усредненные

Rnd

Список

Выборка из 1000 чисел по эксп. распределению

V_mo

Список- точек мат ожидания

Func,Mo,desp,sigman,b4,sigma

вещественная

Плотность распред,мат ожидание, дисперсия, 2 центр. Момент, 4 центр момент,ско

logteor,sigma_v,sigma_m,sigma

список

Список из точек: теоретического лог графика, 3 сигм, -3 сигм

Листинг

Импорт библиотек для построение графика и вычислений

Создание фигуры

Создание графика ax1(График 1)

Настройка параметров графика1 (Начальные коорд и лимиты)

Создание графика logx(График 2)

Настройка параметров графика2 (Начальные коорд и лимиты)

Создание графика logsr(График 3)

Настройка параметров графика3 (Начальные коорд и лимиты)

Функия main

Если choose=1

То запуск функции var1

Иначе запуска функции var2

От I до в диапазоне (0,100) делай

Запуск функции spisok

Запуск функции log

Добавление списка en к списку enn

От x до распаковано списка en

Сумма х делить 100

Рисование графика среднего логарифма

Функция список

Создание списка rnd из 1000 переменных по экспоненциальному закону

count = суммы списка rnd

#Подсчет списка точек мат ожидания

Если choose=1 то

сумма n элемента rnd делить на n

Иначе

Сумма n элемента rnd делить на n в квадрате и деленая на n

Рисование графика из точек мат ожидания(v_mo)

Функиция var1

Подсчет мат ожидания, десперсии,2 центрального момента,ско через интеграл

Вывод на экран

#Посдчет списка точек для графика лог.средний

От q до в диапазоне (1,1001) делай и записывай в список logteor

Sigman(2 центр момент)-mo в квадрате деленое на q

#Подсчет точек 3 сигм для графика

От n до в диапазоне (1,1001) делай и записывай в список sigma_v

Mo+3*корень из (sigman-мо в квадрате)/n

От n до в диапазоне (1,1001) делай и записывай в список sigma_m

Mo+(-3)*корень из (sigman-мо в квадрате)/n

Рисование на ax1, t по оси абсцисс, по оси ординат sigma_v

Рисование на ax1, t по оси абсцисс, по оси ординат sigma_m

Рисование на ax1, t горизонтальную линию

Установка лимита по х и у

Рисование на logsr, t по оси абсцисс, по оси ординат logteor

Функиция var2

Подсчет мат ожидания, десперсии,2 центрального момента,ско, 4 центрального момента через интеграл

Вывод на экран

#Посдчет списка точек для графика лог.средний

От q до в диапазоне (1,1001) делай и записывай в список logteor

Sigman(2 центр момент)-mo в квадрате деленое на q

#Подсчет точек 3 сигм для графика

От n до в диапазоне (1,1001) делай и записывай в список sigma_v

Mo+3*корень из (sigman-мо в квадрате)/n

От n до в диапазоне (1,1001) делай и записывай в список sigma_m

Mo+(-3)*корень из (sigman-мо в квадрате)/n

Рисование на ax1, t по оси абсцисс, по оси ординат sigma_v

Рисование на ax1, t по оси абсцисс, по оси ординат sigma_m

Рисование на ax1, t горизонтальную линию

Установка лимита по х и у

Рисование на logsr, t по оси абсцисс, по оси ординат logteor

Функция log

Пустой список en

Если choose =1

То от z до диапазона(1000)

Делай tt=( z-элемент – мо)в квадрате

Добаить tt в список en

Иначе делай

от z до диапазона(1000)

Делай tt=( z-элемент – десперсия)в квадрате

Добаить tt в список en

Рисование на logx, t по оси абсцисс, по оси ординат en

Запуск функции main

Листинг программы

from sympy import *

import numpy as np

import matplotlib.pyplot as plt

import math

import random

#рисование фигур

fig = plt.figure()

ax1 = fig.add_axes([0,0,1,1])

ax1.grid(True, color = 'g', lw = 0.2)

ax1.set_ylabel('Мат ожидание', fontsize = 16, color = 'g', rotation = 90)

ax1.set_xlabel('Количество N', fontsize = 16, color = 'b')

logx = fig.add_axes([0,1.2,1,1])

logx.set_xlim(2^0,1000)

logx.grid(True)

logsr = fig.add_axes([1.2,1.2,1,1])

logsr.grid(True)

logsr.set_xlim(2^0,1000)

t=np.arange(0,1000,1)

def main():

global choose

choose = int(input('Ввод= '))

if choose == 1:

var1()

else:

var2()

#Запускаем 100 раз и считаем лог-график

enn=[]

for i in range(100):

spisok()

log()

enn.append(en)

logsred=[sum(x)/100 for x in zip(*enn)]

logsr.loglog(t, logsred, basex=2,lw=2)

def spisok():

#список из 1000 эл

global rnd

rnd=[random.expovariate(4) for i in range (1000)]

count=sum(rnd)

global v_mo

v_mo=[]

if choose==1:

#Мат ожидание

summ=0

for N in range(1,1001):

s = rnd[N-1]

summ += s

smo= summ/N

v_mo.append(smo)

else:

summ=0

ddes=0

for N in range(1,1001):

s = rnd[N-1]

summ += s

smo= summ/N

ddes+=((rnd[N-1]-smo)**2)

v_mo.append(ddes/N)

ax1.plot(t,v_mo,zorder=0.3)

def var1():

global mo

global logteor

global sigma_v

global sigma_m

#Подсчет начальных данных

x=Symbol('x')

func = 4*exp(-4*x)

mo = integrate(x*func,(x, 0, np.inf)).n()

func1= ((x-mo)**2)*func

desp= integrate(func1,(x, 0, np.inf)).n()

sigma=sqrt(desp)

sigman=integrate((x**2)*func,(x, 0, np.inf)).n()

print('Мат ожидание=',mo, '\n' 'Дисперсия=',desp,'\n' 'СКО=',sigma)

logteor=[((sigman-mo**2)/q) for q in range(1,1001)]

#Подсчет 3 сигм

sigma_v=[mo+3*((sigman-mo**2)/n)**(1/2) for n in range(1,1001)]

sigma_m=[mo+(-3)*((sigman-mo**2)/n)**(1/2) for n in range(1,1001)]

#Рисование

ax1.plot(t,sigma_v, color='green',lw=4)

ax1.plot(t,sigma_m, color='green',lw=4)

ax1.axhline(mo, color = 'red',lw=4,zorder=1 )

ax1.set_ylim(0,0.5)

ax1.set_xlim(0,1000)

logsr.loglog(t,logteor,basex=2,lw=2)

def var2():

global mo

global logteor

global sigma_v

global sigma_m

global desp

#Подсчет начальных данных

x=Symbol('x')

func = 4*exp(-4*x)

mo = integrate(x*func,(x, 0, np.inf)).n()

func1= ((x-mo)**2)*func

desp= integrate(func1,(x, 0, np.inf)).n()

sigma=sqrt(desp)

sigman=integrate((x**2)*func,(x, 0, np.inf)).n()

func2=((x-mo)**4)*func

b4 = integrate(func2, (x, 0, np.inf)).n()

print('Мат ожидание=',mo, '\n' 'Дисперсия=',desp,'\n' 'СКО=',sigma,'\n' '4 Центр момент = ',b4)

logteor=[((b4-desp**2)/q) for q in range(1,1001)]

#Подсчет 3 сигм

sigma_v=[desp + 3*((b4-desp**2)/n)**(1/2) for n in range(1,1001)]

sigma_m=[desp+(-3)*((b4-desp**2)/n)**(1/2) for n in range(1,1001)] #Рисование

#Рисуем

ax1.plot(t,sigma_v, color='green',lw=4)

ax1.plot(t,sigma_m, color='green',lw=4)

ax1.axhline(desp, color = 'red',lw=4,zorder=1 )

ax1.set_ylim(0,0.5)

ax1.set_xlim(0,1000)

logsr.loglog(t,logteor,basex=2,lw=2)

#Лог график

def log():

global en

en=[]

if choose==1:

for z in range(1000):

tt=(v_mo[z] - mo)**2

en.append(tt)

else:

for z in range(1000):

tt=(v_mo[z] - desp)**2

en.append(tt)

logx.loglog(t, en, basex=2,lw=2)

main()

5)График по пунктам 5-6

Рисунок 3- График зависимости мо от N

6) График по пунктам 7-8

Рисунок 4 – График зависимости квадрата ошибки от объема выборки, где ось абсцисс это объём выборки

7)График по пунктам 8-9

Рисунок 5 – Оранжевые график - усредненный график зависимости квадрата ошибки от объема выборки, а синий график – теоретически подсчитанный

8) Графики при оценки 2 центрального момента

Рисунок 6 – Графики при оценки 2 центрального момента

Выводы:

В ходе лабораторной работы, я научился точечно оценивать моменты случайной величины с помощью python.

Данные подсчитанные вручную и с помощью программы совпали,

И данные для вторых центральных моментах совпали

Оценка мат ожидания от количество N лежит в диапазоне 3 сигм, график симметричен. График зависимости квадрата ошибки от объема выборки и теоретический график, так же совпадают.

Все это говорит о правильности выполненной работы

Соседние файлы в предмете Статистика