/
fedorhub
/
Python_Le
Обзор
Документация
Войти
/
fedorhub
/
Python_Le
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
CI/CD
Аналитика
Безопасность
master
python/random-11-03/index.htm
3 719 строк
601 KB
fedorhub
upload files
17 дек 2025, 14:35
17 дек 2025, 14:35
50de53d
Код
Авторство
О чём код?
<!DOCTYPE html> <html class="no-js" lang="ru-RU"> <head> <meta http-equiv="content-type" content="text/html" charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" > <link rel="profile" href="http://gmpg.org/xfn/11"> <meta name='robots' content='index, follow, max-image-preview:large, max-snippet:-1, max-video-preview:-1' /> <script> MathJax = { tex: { inlineMath: [['$','$'],['\\(','\\)']], processEscapes: true }, options: { ignoreHtmlClass: 'tex2jax_ignore|editor-rich-text' } }; </script> <!-- This site is optimized with the Yoast SEO plugin v23.8 - https://yoast.com/wordpress/plugins/seo/ --> <title>Модуль random. Часть 3 | Программирование на Питоне</title> <meta name="description" content="В третьей части занятия по модулю random рассмотрим равномерное и нормальное распределения непрерывной случайной величины." /> <link rel="canonical" href="https://www.dmitrymakarov.ru/python/random-11-03/" /> <meta property="og:locale" content="ru_RU" /> <meta property="og:type" content="article" /> <meta property="og:title" content="Модуль random. Часть 3 | Программирование на Питоне" /> <meta property="og:description" content="В третьей части занятия по модулю random рассмотрим равномерное и нормальное распределения непрерывной случайной величины." /> <meta property="og:url" content="https://www.dmitrymakarov.ru/python/random-11-03/" /> <meta property="og:site_name" content="Машинное обучение" /> <meta property="article:modified_time" content="2024-10-12T18:23:10+00:00" /> <meta property="og:image" content="https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/uniform-pdf.png" /> <meta property="og:image:width" content="672" /> <meta property="og:image:height" content="402" /> <meta property="og:image:type" content="image/png" /> <meta name="twitter:card" content="summary_large_image" /> <meta name="twitter:label1" content="Примерное время для чтения" /> <meta name="twitter:data1" content="12 минут" /> <script type="application/ld+json" class="yoast-schema-graph">{"@context":"https://schema.org","@graph":[{"@type":"WebPage","@id":"https://www.dmitrymakarov.ru/python/random-11-03/","url":"https://www.dmitrymakarov.ru/python/random-11-03/","name":"Модуль random. Часть 3 | Программирование на Питоне","isPartOf":{"@id":"https://www.dmitrymakarov.ru/#website"},"primaryImageOfPage":{"@id":"https://www.dmitrymakarov.ru/python/random-11-03/#primaryimage"},"image":{"@id":"https://www.dmitrymakarov.ru/python/random-11-03/#primaryimage"},"thumbnailUrl":"https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/uniform-pdf.png","datePublished":"2023-02-01T13:25:46+00:00","dateModified":"2024-10-12T18:23:10+00:00","description":"В третьей части занятия по модулю random рассмотрим равномерное и нормальное распределения непрерывной случайной величины.","breadcrumb":{"@id":"https://www.dmitrymakarov.ru/python/random-11-03/#breadcrumb"},"inLanguage":"ru-RU","potentialAction":[{"@type":"ReadAction","target":["https://www.dmitrymakarov.ru/python/random-11-03/"]}]},{"@type":"ImageObject","inLanguage":"ru-RU","@id":"https://www.dmitrymakarov.ru/python/random-11-03/#primaryimage","url":"https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/uniform-pdf.png","contentUrl":"https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/uniform-pdf.png","width":672,"height":402},{"@type":"BreadcrumbList","@id":"https://www.dmitrymakarov.ru/python/random-11-03/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Главная страница","item":"https://www.dmitrymakarov.ru/"},{"@type":"ListItem","position":2,"name":"Программирование на Питоне","item":"https://www.dmitrymakarov.ru/python/"},{"@type":"ListItem","position":3,"name":"Модуль random. Часть 3"}]},{"@type":"WebSite","@id":"https://www.dmitrymakarov.ru/#website","url":"https://www.dmitrymakarov.ru/","name":"Машинное обучение","description":"","publisher":{"@id":"https://www.dmitrymakarov.ru/#/schema/person/3fc221e2d391cc5cfd9d31c9c251c2a4"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https://www.dmitrymakarov.ru/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"ru-RU"},{"@type":["Person","Organization"],"@id":"https://www.dmitrymakarov.ru/#/schema/person/3fc221e2d391cc5cfd9d31c9c251c2a4","name":"DmitryMakarov","image":{"@type":"ImageObject","inLanguage":"ru-RU","@id":"https://www.dmitrymakarov.ru/#/schema/person/image/","url":"https://secure.gravatar.com/avatar/2c5f922d990c667feffc00f99517cc0e?s=96&d=mm&r=g","contentUrl":"https://secure.gravatar.com/avatar/2c5f922d990c667feffc00f99517cc0e?s=96&d=mm&r=g","caption":"DmitryMakarov"},"logo":{"@id":"https://www.dmitrymakarov.ru/#/schema/person/image/"}}]}</script> <!-- / Yoast SEO plugin. --> <link rel='dns-prefetch' href='//cdn.jsdelivr.net' /> <link rel="alternate" type="application/rss+xml" title="Машинное обучение » Лента" href="https://www.dmitrymakarov.ru/feed/" /> <link rel="alternate" type="application/rss+xml" title="Машинное обучение » Лента комментариев" href="https://www.dmitrymakarov.ru/comments/feed/" /> <script type="text/javascript"> /* <![CDATA[ */ window._wpemojiSettings = {"baseUrl":"https:\/\/s.w.org\/images\/core\/emoji\/15.0.3\/72x72\/","ext":".png","svgUrl":"https:\/\/s.w.org\/images\/core\/emoji\/15.0.3\/svg\/","svgExt":".svg","source":{"concatemoji":"https:\/\/www.dmitrymakarov.ru\/wp-includes\/js\/wp-emoji-release.min.js?ver=6.6.2"}}; /*! This file is auto-generated */ !function(i,n){var o,s,e;function c(e){try{var t={supportTests:e,timestamp:(new Date).valueOf()};sessionStorage.setItem(o,JSON.stringify(t))}catch(e){}}function p(e,t,n){e.clearRect(0,0,e.canvas.width,e.canvas.height),e.fillText(t,0,0);var t=new Uint32Array(e.getImageData(0,0,e.canvas.width,e.canvas.height).data),r=(e.clearRect(0,0,e.canvas.width,e.canvas.height),e.fillText(n,0,0),new Uint32Array(e.getImageData(0,0,e.canvas.width,e.canvas.height).data));return t.every(function(e,t){return e===r[t]})}function u(e,t,n){switch(t){case"flag":return n(e,"\ud83c\udff3\ufe0f\u200d\u26a7\ufe0f","\ud83c\udff3\ufe0f\u200b\u26a7\ufe0f")?!1:!n(e,"\ud83c\uddfa\ud83c\uddf3","\ud83c\uddfa\u200b\ud83c\uddf3")&&!n(e,"\ud83c\udff4\udb40\udc67\udb40\udc62\udb40\udc65\udb40\udc6e\udb40\udc67\udb40\udc7f","\ud83c\udff4\u200b\udb40\udc67\u200b\udb40\udc62\u200b\udb40\udc65\u200b\udb40\udc6e\u200b\udb40\udc67\u200b\udb40\udc7f");case"emoji":return!n(e,"\ud83d\udc26\u200d\u2b1b","\ud83d\udc26\u200b\u2b1b")}return!1}function f(e,t,n){var r="undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope?new OffscreenCanvas(300,150):i.createElement("canvas"),a=r.getContext("2d",{willReadFrequently:!0}),o=(a.textBaseline="top",a.font="600 32px Arial",{});return e.forEach(function(e){o[e]=t(a,e,n)}),o}function t(e){var t=i.createElement("script");t.src=e,t.defer=!0,i.head.appendChild(t)}"undefined"!=typeof Promise&&(o="wpEmojiSettingsSupports",s=["flag","emoji"],n.supports={everything:!0,everythingExceptFlag:!0},e=new Promise(function(e){i.addEventListener("DOMContentLoaded",e,{once:!0})}),new Promise(function(t){var n=function(){try{var e=JSON.parse(sessionStorage.getItem(o));if("object"==typeof e&&"number"==typeof e.timestamp&&(new Date).valueOf()<e.timestamp+604800&&"object"==typeof e.supportTests)return e.supportTests}catch(e){}return null}();if(!n){if("undefined"!=typeof Worker&&"undefined"!=typeof OffscreenCanvas&&"undefined"!=typeof URL&&URL.createObjectURL&&"undefined"!=typeof Blob)try{var e="postMessage("+f.toString()+"("+[JSON.stringify(s),u.toString(),p.toString()].join(",")+"));",r=new Blob([e],{type:"text/javascript"}),a=new Worker(URL.createObjectURL(r),{name:"wpTestEmojiSupports"});return void(a.onmessage=function(e){c(n=e.data),a.terminate(),t(n)})}catch(e){}c(n=f(s,u,p))}t(n)}).then(function(e){for(var t in e)n.supports[t]=e[t],n.supports.everything=n.supports.everything&&n.supports[t],"flag"!==t&&(n.supports.everythingExceptFlag=n.supports.everythingExceptFlag&&n.supports[t]);n.supports.everythingExceptFlag=n.supports.everythingExceptFlag&&!n.supports.flag,n.DOMReady=!1,n.readyCallback=function(){n.DOMReady=!0}}).then(function(){return e}).then(function(){var e;n.supports.everything||(n.readyCallback(),(e=n.source||{}).concatemoji?t(e.concatemoji):e.wpemoji&&e.twemoji&&(t(e.twemoji),t(e.wpemoji)))}))}((window,document),window._wpemojiSettings); /* ]]> */ </script> <link rel='stylesheet' id='mci-footnotes-no-tooltips-pagelayout-none-css' href='https://www.dmitrymakarov.ru/wp-content/plugins/footnotes/css/footnotes-nottbrpl0.min.css?ver=2.7.3' type='text/css' media='all' /> <link rel='stylesheet' id='urvanov_syntax_highlighter-css' href='https://www.dmitrymakarov.ru/wp-content/plugins/urvanov-syntax-highlighter/css/min/urvanov_syntax_highlighter.min.css?ver=2.8.37' type='text/css' media='all' /> <link rel='stylesheet' id='crayon-theme-familiar-my-copy-css' href='https://www.dmitrymakarov.ru/wp-content/uploads/urvanov-syntax-highlighter/themes/familiar-my-copy/familiar-my-copy.css?ver=2.8.37' type='text/css' media='all' /> <link rel='stylesheet' id='crayon-font-consolas-css' href='https://www.dmitrymakarov.ru/wp-content/plugins/urvanov-syntax-highlighter/fonts/consolas.css?ver=2.8.37' type='text/css' media='all' /> <style id='wp-emoji-styles-inline-css' type='text/css'> img.wp-smiley, img.emoji { display: inline !important; border: none !important; box-shadow: none !important; height: 1em !important; width: 1em !important; margin: 0 0.07em !important; vertical-align: -0.1em !important; background: none !important; padding: 0 !important; } </style> <link rel='stylesheet' id='wp-block-library-css' href='https://www.dmitrymakarov.ru/wp-includes/css/dist/block-library/style.min.css?ver=6.6.2' type='text/css' media='all' /> <link rel='stylesheet' id='ultimate_blocks-cgb-style-css-css' href='https://www.dmitrymakarov.ru/wp-content/plugins/ultimate-blocks/dist/blocks.style.build.css?ver=672da51e86ca7' type='text/css' media='all' /> <style id='classic-theme-styles-inline-css' type='text/css'> /*! This file is auto-generated */ .wp-block-button__link{color:#fff;background-color:#32373c;border-radius:9999px;box-shadow:none;text-decoration:none;padding:calc(.667em + 2px) calc(1.333em + 2px);font-size:1.125em}.wp-block-file__button{background:#32373c;color:#fff;text-decoration:none} </style> <style id='global-styles-inline-css' type='text/css'> :root{--wp--preset--aspect-ratio--square: 1;--wp--preset--aspect-ratio--4-3: 4/3;--wp--preset--aspect-ratio--3-4: 3/4;--wp--preset--aspect-ratio--3-2: 3/2;--wp--preset--aspect-ratio--2-3: 2/3;--wp--preset--aspect-ratio--16-9: 16/9;--wp--preset--aspect-ratio--9-16: 9/16;--wp--preset--color--black: #121212;--wp--preset--color--cyan-bluish-gray: #abb8c3;--wp--preset--color--white: #fff;--wp--preset--color--pale-pink: #f78da7;--wp--preset--color--vivid-red: #cf2e2e;--wp--preset--color--luminous-vivid-orange: #ff6900;--wp--preset--color--luminous-vivid-amber: #fcb900;--wp--preset--color--light-green-cyan: #7bdcb5;--wp--preset--color--vivid-green-cyan: #00d084;--wp--preset--color--pale-cyan-blue: #8ed1fc;--wp--preset--color--vivid-cyan-blue: #0693e3;--wp--preset--color--vivid-purple: #9b51e0;--wp--preset--color--dark-gray: #333;--wp--preset--color--medium-gray: #555;--wp--preset--color--light-gray: #777;--wp--preset--gradient--vivid-cyan-blue-to-vivid-purple: linear-gradient(135deg,rgba(6,147,227,1) 0%,rgb(155,81,224) 100%);--wp--preset--gradient--light-green-cyan-to-vivid-green-cyan: linear-gradient(135deg,rgb(122,220,180) 0%,rgb(0,208,130) 100%);--wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange: linear-gradient(135deg,rgba(252,185,0,1) 0%,rgba(255,105,0,1) 100%);--wp--preset--gradient--luminous-vivid-orange-to-vivid-red: linear-gradient(135deg,rgba(255,105,0,1) 0%,rgb(207,46,46) 100%);--wp--preset--gradient--very-light-gray-to-cyan-bluish-gray: linear-gradient(135deg,rgb(238,238,238) 0%,rgb(169,184,195) 100%);--wp--preset--gradient--cool-to-warm-spectrum: linear-gradient(135deg,rgb(74,234,220) 0%,rgb(151,120,209) 20%,rgb(207,42,186) 40%,rgb(238,44,130) 60%,rgb(251,105,98) 80%,rgb(254,248,76) 100%);--wp--preset--gradient--blush-light-purple: linear-gradient(135deg,rgb(255,206,236) 0%,rgb(152,150,240) 100%);--wp--preset--gradient--blush-bordeaux: linear-gradient(135deg,rgb(254,205,165) 0%,rgb(254,45,45) 50%,rgb(107,0,62) 100%);--wp--preset--gradient--luminous-dusk: linear-gradient(135deg,rgb(255,203,112) 0%,rgb(199,81,192) 50%,rgb(65,88,208) 100%);--wp--preset--gradient--pale-ocean: linear-gradient(135deg,rgb(255,245,203) 0%,rgb(182,227,212) 50%,rgb(51,167,181) 100%);--wp--preset--gradient--electric-grass: linear-gradient(135deg,rgb(202,248,128) 0%,rgb(113,206,126) 100%);--wp--preset--gradient--midnight: linear-gradient(135deg,rgb(2,3,129) 0%,rgb(40,116,252) 100%);--wp--preset--font-size--small: 16px;--wp--preset--font-size--medium: 20px;--wp--preset--font-size--large: 24px;--wp--preset--font-size--x-large: 42px;--wp--preset--font-size--normal: 18px;--wp--preset--font-size--larger: 28px;--wp--preset--spacing--20: 0.44rem;--wp--preset--spacing--30: 0.67rem;--wp--preset--spacing--40: 1rem;--wp--preset--spacing--50: 1.5rem;--wp--preset--spacing--60: 2.25rem;--wp--preset--spacing--70: 3.38rem;--wp--preset--spacing--80: 5.06rem;--wp--preset--shadow--natural: 6px 6px 9px rgba(0, 0, 0, 0.2);--wp--preset--shadow--deep: 12px 12px 50px rgba(0, 0, 0, 0.4);--wp--preset--shadow--sharp: 6px 6px 0px rgba(0, 0, 0, 0.2);--wp--preset--shadow--outlined: 6px 6px 0px -3px rgba(255, 255, 255, 1), 6px 6px rgba(0, 0, 0, 1);--wp--preset--shadow--crisp: 6px 6px 0px rgba(0, 0, 0, 1);}:where(.is-layout-flex){gap: 0.5em;}:where(.is-layout-grid){gap: 0.5em;}body .is-layout-flex{display: flex;}.is-layout-flex{flex-wrap: wrap;align-items: center;}.is-layout-flex > :is(*, div){margin: 0;}body .is-layout-grid{display: grid;}.is-layout-grid > :is(*, div){margin: 0;}:where(.wp-block-columns.is-layout-flex){gap: 2em;}:where(.wp-block-columns.is-layout-grid){gap: 2em;}:where(.wp-block-post-template.is-layout-flex){gap: 1.25em;}:where(.wp-block-post-template.is-layout-grid){gap: 1.25em;}.has-black-color{color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-color{color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-color{color: var(--wp--preset--color--white) !important;}.has-pale-pink-color{color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-color{color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-color{color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-color{color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-color{color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-color{color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-color{color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-color{color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-color{color: var(--wp--preset--color--vivid-purple) !important;}.has-black-background-color{background-color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-background-color{background-color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-background-color{background-color: var(--wp--preset--color--white) !important;}.has-pale-pink-background-color{background-color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-background-color{background-color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-background-color{background-color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-background-color{background-color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-background-color{background-color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-background-color{background-color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-background-color{background-color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-background-color{background-color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-background-color{background-color: var(--wp--preset--color--vivid-purple) !important;}.has-black-border-color{border-color: var(--wp--preset--color--black) !important;}.has-cyan-bluish-gray-border-color{border-color: var(--wp--preset--color--cyan-bluish-gray) !important;}.has-white-border-color{border-color: var(--wp--preset--color--white) !important;}.has-pale-pink-border-color{border-color: var(--wp--preset--color--pale-pink) !important;}.has-vivid-red-border-color{border-color: var(--wp--preset--color--vivid-red) !important;}.has-luminous-vivid-orange-border-color{border-color: var(--wp--preset--color--luminous-vivid-orange) !important;}.has-luminous-vivid-amber-border-color{border-color: var(--wp--preset--color--luminous-vivid-amber) !important;}.has-light-green-cyan-border-color{border-color: var(--wp--preset--color--light-green-cyan) !important;}.has-vivid-green-cyan-border-color{border-color: var(--wp--preset--color--vivid-green-cyan) !important;}.has-pale-cyan-blue-border-color{border-color: var(--wp--preset--color--pale-cyan-blue) !important;}.has-vivid-cyan-blue-border-color{border-color: var(--wp--preset--color--vivid-cyan-blue) !important;}.has-vivid-purple-border-color{border-color: var(--wp--preset--color--vivid-purple) !important;}.has-vivid-cyan-blue-to-vivid-purple-gradient-background{background: var(--wp--preset--gradient--vivid-cyan-blue-to-vivid-purple) !important;}.has-light-green-cyan-to-vivid-green-cyan-gradient-background{background: var(--wp--preset--gradient--light-green-cyan-to-vivid-green-cyan) !important;}.has-luminous-vivid-amber-to-luminous-vivid-orange-gradient-background{background: var(--wp--preset--gradient--luminous-vivid-amber-to-luminous-vivid-orange) !important;}.has-luminous-vivid-orange-to-vivid-red-gradient-background{background: var(--wp--preset--gradient--luminous-vivid-orange-to-vivid-red) !important;}.has-very-light-gray-to-cyan-bluish-gray-gradient-background{background: var(--wp--preset--gradient--very-light-gray-to-cyan-bluish-gray) !important;}.has-cool-to-warm-spectrum-gradient-background{background: var(--wp--preset--gradient--cool-to-warm-spectrum) !important;}.has-blush-light-purple-gradient-background{background: var(--wp--preset--gradient--blush-light-purple) !important;}.has-blush-bordeaux-gradient-background{background: var(--wp--preset--gradient--blush-bordeaux) !important;}.has-luminous-dusk-gradient-background{background: var(--wp--preset--gradient--luminous-dusk) !important;}.has-pale-ocean-gradient-background{background: var(--wp--preset--gradient--pale-ocean) !important;}.has-electric-grass-gradient-background{background: var(--wp--preset--gradient--electric-grass) !important;}.has-midnight-gradient-background{background: var(--wp--preset--gradient--midnight) !important;}.has-small-font-size{font-size: var(--wp--preset--font-size--small) !important;}.has-medium-font-size{font-size: var(--wp--preset--font-size--medium) !important;}.has-large-font-size{font-size: var(--wp--preset--font-size--large) !important;}.has-x-large-font-size{font-size: var(--wp--preset--font-size--x-large) !important;} :where(.wp-block-post-template.is-layout-flex){gap: 1.25em;}:where(.wp-block-post-template.is-layout-grid){gap: 1.25em;} :where(.wp-block-columns.is-layout-flex){gap: 2em;}:where(.wp-block-columns.is-layout-grid){gap: 2em;} :root :where(.wp-block-pullquote){font-size: 1.5em;line-height: 1.6;} </style> <link rel='stylesheet' id='ub-extension-style-css-css' href='https://www.dmitrymakarov.ru/wp-content/plugins/ultimate-blocks/src/extensions/style.css?ver=6.6.2' type='text/css' media='all' /> <link rel='stylesheet' id='mcluhan-fonts-css' href='https://www.dmitrymakarov.ru/wp-content/themes/mcluhan/assets/css/fonts.css?ver=6.6.2' type='text/css' media='all' /> <link rel='stylesheet' id='fontawesome-css' href='https://www.dmitrymakarov.ru/wp-content/themes/mcluhan/assets/css/font-awesome.css?ver=6.6.2' type='text/css' media='all' /> <link rel='stylesheet' id='mcluhan-style-css' href='https://www.dmitrymakarov.ru/wp-content/themes/mcluhan/style.css?ver=2.1.1' type='text/css' media='all' /> <script type="text/javascript" src="https://www.dmitrymakarov.ru/wp-includes/js/jquery/jquery.min.js?ver=3.7.1" id="jquery-core-js"></script> <script type="text/javascript" src="https://www.dmitrymakarov.ru/wp-includes/js/jquery/jquery-migrate.min.js?ver=3.4.1" id="jquery-migrate-js"></script> <script type="text/javascript" id="urvanov_syntax_highlighter_js-js-extra"> /* <![CDATA[ */ var UrvanovSyntaxHighlighterSyntaxSettings = {"version":"2.8.37","is_admin":"0","ajaxurl":"https:\/\/www.dmitrymakarov.ru\/wp-admin\/admin-ajax.php","prefix":"urvanov-syntax-highlighter-","setting":"urvanov-syntax-highlighter-setting","selected":"urvanov-syntax-highlighter-setting-selected","changed":"urvanov-syntax-highlighter-setting-changed","special":"urvanov-syntax-highlighter-setting-special","orig_value":"data-orig-value","debug":""}; var UrvanovSyntaxHighlighterSyntaxStrings = {"copy":"Copied to the clipboard","minimize":"Click To Expand Code"}; /* ]]> */ </script> <script type="text/javascript" src="https://www.dmitrymakarov.ru/wp-content/plugins/urvanov-syntax-highlighter/js/min/urvanov_syntax_highlighter.min.js?ver=2.8.37" id="urvanov_syntax_highlighter_js-js"></script> <style>#ub_table-of-contents-85f8918e-37eb-4367-8ae0-ecb994d806cc{ }#ub_table-of-contents-85f8918e-37eb-4367-8ae0-ecb994d806cc .ub_table-of-contents-header{ text-align: left; } </style> <!-- Customizer CSS --> <style type="text/css"> body .site-header { background-color:#004235; }.social-menu.desktop { background-color:#004235; }.social-menu a:hover { color:#004235; }.social-menu a.active { color:#004235; }.mobile-menu-wrapper { background-color:#004235; }.social-menu.mobile { background-color:#004235; }.mobile-search.active { background-color:#004235; } </style> <!-- /Customizer CSS --> <script>jQuery( 'html' ).removeClass( 'no-js' ).addClass( 'js' );</script> <style type="text/css">.broken_link, a.broken_link { text-decoration: line-through; }</style><style type="text/css" id="custom-background-css"> body.custom-background { background-color: #fff9ef; } </style> <link rel="icon" href="https://www.dmitrymakarov.ru/wp-content/uploads/2021/08/cropped-wp-favicon-512-32x32.png" sizes="32x32" /> <link rel="icon" href="https://www.dmitrymakarov.ru/wp-content/uploads/2021/08/cropped-wp-favicon-512-192x192.png" sizes="192x192" /> <link rel="apple-touch-icon" href="https://www.dmitrymakarov.ru/wp-content/uploads/2021/08/cropped-wp-favicon-512-180x180.png" /> <meta name="msapplication-TileImage" content="https://www.dmitrymakarov.ru/wp-content/uploads/2021/08/cropped-wp-favicon-512-270x270.png" /> <style type="text/css" media="all"> .footnotes_reference_container {margin-top: 24px !important; margin-bottom: 0px !important;} .footnote_container_prepare > p {border-bottom: 1px solid #aaaaaa !important;} </style> </head> <body class="page-template page-template-full-width-page-template page-template-full-width-page-template-php page page-id-18508 page-child parent-pageid-1374 custom-background full-width-template"> <a class="skip-link button" href="#site-content">Перейти к содержимому</a> <header class="site-header group"> <p class="site-title"><a href="https://www.dmitrymakarov.ru" class="site-name">Машинное обучение</a></p> <div class="nav-toggle"> <div class="bar"></div> <div class="bar"></div> </div> <div class="menu-wrapper"> <ul class="main-menu desktop"> </ul> </div><!-- .menu-wrapper --> <div class="social-menu desktop"> <ul class="social-menu-inner"> <li class="social-search-wrapper"><a href="https://www.dmitrymakarov.ru/?s="></a></li> </ul><!-- .social-menu-inner --> </div><!-- .social-menu --> </header><!-- header --> <div class="mobile-menu-wrapper"> <ul class="main-menu mobile"> <li class="toggle-mobile-search-wrapper"><a href="#" class="toggle-mobile-search">Поиск</a></li> </ul><!-- .main-menu.mobile --> </div><!-- .mobile-menu-wrapper --> <div class="mobile-search"> <div class="untoggle-mobile-search"></div> <form role="search" method="get" class="search-form" action="https://www.dmitrymakarov.ru/"> <label class="screen-reader-text" for="search-form-672da51ebde1a">Поиск:</label> <input type="search" id="search-form-672da51ebde1a" class="search-field" placeholder="Введите запрос" value="" name="s" autocomplete="off" /> </button> </form> <div class="mobile-results"> <div class="results-wrapper"></div> </div> </div><!-- .mobile-search --> <div class="search-overlay"> <form role="search" method="get" class="search-form" action="https://www.dmitrymakarov.ru/"> <label class="screen-reader-text" for="search-form-672da51ebde95">Поиск:</label> <input type="search" id="search-form-672da51ebde95" class="search-field" placeholder="Введите запрос" value="" name="s" autocomplete="off" /> </button> </form> </div><!-- .search-overlay --> <main class="site-content" id="site-content"> <article class="post-18508 page type-page status-publish hentry missing-thumbnail"> <header class="entry-header section-inner"> <h1 class="entry-title">Модуль random. Часть 3</h1> </header><!-- .entry-header --> <div class="entry-content section-inner"> <p class="has-light-gray-color has-text-color"><a href="https://www.dmitrymakarov.ru/">Все курсы</a> > <a href="https://www.dmitrymakarov.ru/python/">Программирование на Питоне</a> > Занятие 11 (часть 3)</p> <p>Рассмотрим равномерное и нормальное распределения непрерывной случайной величины.</p> <div class="wp-block-ub-table-of-contents-block ub_table-of-contents" id="ub_table-of-contents-85f8918e-37eb-4367-8ae0-ecb994d806cc" data-linktodivider="false" data-showtext="show" data-hidetext="hide" data-scrolltype="auto" data-initiallyhideonmobile="false" data-initiallyshow="true"><div class="ub_table-of-contents-header-container"><div class="ub_table-of-contents-header"> <div class="ub_table-of-contents-title"><strong>Содержание занятия</strong></div></div></div><div class="ub_table-of-contents-extra-container"><div class="ub_table-of-contents-container ub_table-of-contents-1-column "><ul><li><a href=https://www.dmitrymakarov.ru/python/random-11-03/#0-nepreryvnoe-veroyatnostnoe-raspredelenie>Непрерывное вероятностное распределение</a><ul><li><a href=https://www.dmitrymakarov.ru/python/random-11-03/#1-nepreryvnoe-ravnomernoe-raspredelenie>Непрерывное равномерное распределение</a><ul><li><a href=https://www.dmitrymakarov.ru/python/random-11-03/#2-plotnost-veroyatnosti>Плотность вероятности</a></li><li><a href=https://www.dmitrymakarov.ru/python/random-11-03/#3-matozhidanie-i-dispersiya>Матожидание и дисперсия</a></li><li><a href=https://www.dmitrymakarov.ru/python/random-11-03/#4-realizatsiya-na-pitone>Реализация на Питоне</a></li><li><a href=https://www.dmitrymakarov.ru/python/random-11-03/#5-raznitsa-mezhdu-nprandomrandom-nprandomrand-i-nprandomuniform>Разница между np.random.random(), np.random.rand() и np.random.uniform()</a></li></ul></li><li><a href=https://www.dmitrymakarov.ru/python/random-11-03/#6-normalnoe-raspredelenie>Нормальное распределение</a><ul><li><a href=https://www.dmitrymakarov.ru/python/random-11-03/#7-funktsiya-plotnosti-normalnogo-raspredeleniya>Функция плотности нормального распределения</a></li><li><a href=https://www.dmitrymakarov.ru/python/random-11-03/#8-funktsiya-nprandomnormal>Функция np.random.normal()</a></li><li><a href=https://www.dmitrymakarov.ru/python/random-11-03/#9-raschet-veroyatnosti>Расчет вероятности</a></li><li><a href=https://www.dmitrymakarov.ru/python/random-11-03/#10-funktsiya-plotnosti-i-funktsiya-raspredeleniya>Функция плотности и функция распределения</a></li><li><a href=https://www.dmitrymakarov.ru/python/random-11-03/#11-veroyatnost-konkretnogo-znacheniya>Вероятность конкретного значения</a></li><li><a href=https://www.dmitrymakarov.ru/python/random-11-03/#12-formirovanie-vyborki>Формирование выборки</a></li><li><a href=https://www.dmitrymakarov.ru/python/random-11-03/#13-tsentralnaya-predelnaya-teorema>Центральная предельная теорема</a><ul><li><a href=https://www.dmitrymakarov.ru/python/random-11-03/#14-opredeleniya-i-notatsiya>Определения и нотация</a></li><li><a href=https://www.dmitrymakarov.ru/python/random-11-03/#15-tspt-i-normalnoe-raspredelenie>ЦПТ и нормальное распределение</a></li><li><a href=https://www.dmitrymakarov.ru/python/random-11-03/#16-proverim-na-pitone>Проверим на Питоне</a></li></ul></li><li><a href=https://www.dmitrymakarov.ru/python/random-11-03/#17-standartnoe-normalnoe-raspredelenie>Стандартное нормальное распределение</a></li><li><a href=https://www.dmitrymakarov.ru/python/random-11-03/#18-kriterii-normalnosti-raspredeleniya>Критерии нормальности распределения</a><ul><li><a href=https://www.dmitrymakarov.ru/python/random-11-03/#19-sposob-1-grafik-normalnoy-veroyatnosti>Способ 1. График нормальной вероятности</a></li><li><a href=https://www.dmitrymakarov.ru/python/random-11-03/#20-sposob-2-test-shapiro-uilka>Способ 2. Тест Шапиро-Уилка</a></li></ul></li><li><a href=https://www.dmitrymakarov.ru/python/random-11-03/#21-normalnoe-priblizhenie-binomialnogo-raspredeleniya>Нормальное приближение биномиального распределения</a></li><li><a href=https://www.dmitrymakarov.ru/python/random-11-03/#22-teorema-muavra-laplasa>Теорема Муавра-Лапласа</a><ul><li><a href=https://www.dmitrymakarov.ru/python/random-11-03/#23-popravka-na-nepreryvnost-raspredeleniya>Поправка на непрерывность распределения</a></li><li><a href=https://www.dmitrymakarov.ru/python/random-11-03/#24-primer-priblizheniya>Пример приближения</a></li></ul></li></ul></li></ul></li><li><a href=https://www.dmitrymakarov.ru/python/random-11-03/#25-promezhutochnyy-itog>Промежуточный итог</a></li></ul></div></div></div> <p class="has-text-align-center has-white-color has-text-color has-background" style="background-color:#004235"><a href="https://colab.research.google.com/drive/1VX5VlmmBXhFqdY4uRxjE1a3uwAqNyNTh?usp=sharing" target="_blank" rel="noreferrer noopener">Продолжим работать в том же блокноте</a>⧉</p> <h2 class="wp-block-heading" id="0-nepreryvnoe-veroyatnostnoe-raspredelenie">Непрерывное вероятностное распределение</h2> <p>Как уже <a href="https://www.dmitrymakarov.ru/python/random-11-02/#2-nepreryvnaya-sluchaynaya-velichina">было сказано</a>, в отличие от дискретной величины, непрерывная величина может принимать любое значение в заданном интервале.</p> <h3 class="wp-block-heading" id="1-nepreryvnoe-ravnomernoe-raspredelenie">Непрерывное равномерное распределение</h3> <p>Непрерывное равномерное распределение (continuous uniform distribution) описывает случайную величину, вероятность значений которой одинакова на заданном интервале от $a$ до $b$.</p> <p>$$ X \sim U(a, b) $$</p> <p>Например, если мы знаем, что автобус приходит на остановку каждые 12 минут, то время ожидания автобуса на остановке равномерно распределено между 0 и 12 минутами.</p> <p>$$ X \sim U(0, 12) $$</p> <h4 class="wp-block-heading" id="2-plotnost-veroyatnosti">Плотность вероятности</h4> <p>Непрерывное распределение (в отличие от дискретного) задается <strong>плотностью вероятности</strong> (probability density function, pdf). Для равномерного непрерывного распределения плотность вероятности определяется вот такой несложной функцией.</p> <p>$$ pdf(x) = \begin{cases} \frac{1}{b-a}, x \in [a, b] \\ 0, x \notin [a, b] \end{cases} $$</p> <p>В примере с ожиданием автобуса вероятность его приезда в любой момент в пределах заданного интервала равна</p> <p>$$ pdf(x) = \begin{cases} \frac{1}{12-0} = \frac{1}{12}, x \in [0, 12] \\ 0, x \notin [0, 12] \end{cases} $$</p> <p>На графике равномерное распределение представляет собой прямоугольник, площадь которого всегда равна единице.</p> <figure class="wp-block-image size-full is-resized"><img fetchpriority="high" decoding="async" width="672" height="402" src="https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/uniform-pdf.png" alt="непрерывное равномерное распределение" class="wp-image-11212" style="width:468px;height:280px" srcset="https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/uniform-pdf.png 672w, https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/uniform-pdf-300x179.png 300w, https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/uniform-pdf-600x359.png 600w" sizes="(max-width: 672px) 100vw, 672px" /></figure> <p class="has-background" style="background-color:#ffe8c4">Если мы хотим посчитать вероятность приезда автобуса в пределах заданного интервала ожидания, нам, по сути, нужно вычислить отдельный участок площади прямоугольника.</p> <p>Например, вероятность приезда автобуса при ожидании до 12 минут включительно составляет 1.00 или 100%, потому что такой промежуток включает всю площадь прямоугольника.</p> <p>Теперь давайте рассчитаем вероятность ожидания автобуса до 7 минут включительно. Нас будет интересовать интервал от 0 до 7 минут и соответствующий участок площади прямоугольника.</p> <figure class="wp-block-image size-full is-resized"><img decoding="async" width="656" height="394" src="https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/uniform-pdf-7.png" alt="непрерывное равномерное распределение (пример)" class="wp-image-11213" style="width:465px;height:279px" srcset="https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/uniform-pdf-7.png 656w, https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/uniform-pdf-7-300x180.png 300w, https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/uniform-pdf-7-600x360.png 600w" sizes="(max-width: 656px) 100vw, 656px" /></figure> <p>Применив несложную формулу, мы без труда вычислим площадь этого участка.</p> <p>$$ P(7) = \frac{1}{12} \times 7 \approx 0{,}583 $$</p> <h4 class="wp-block-heading" id="3-matozhidanie-i-dispersiya">Матожидание и дисперсия</h4> <p>Остается рассчитать матожидание (среднее время ожидания автобуса) и дисперсию.</p> <p>$$ {\mathbb E}[X] = \frac{a + b}{2} = \frac{0 + 12}{2} = 6 $$</p> <p>$$ {\mathbb D}[X] = \frac{(b-a)^2}{12} = \frac{(12-0)^2}{12} = 12 $$</p> <h4 class="wp-block-heading" id="4-realizatsiya-na-pitone">Реализация на Питоне</h4> <p>Воспользуемся <strong>функцией np.random.uniform()</strong> для того, чтобы создать равномерное распределение с параметрами $U(0, 12)$.</p> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51e7efcb989430335" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7efcb989430335-1">1</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7efcb989430335-2">2</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7efcb989430335-3">3</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7efcb989430335-4">4</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7efcb989430335-5">5</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7efcb989430335-6">6</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7efcb989430335-1"><span class="crayon-c"># создадим распределение с параметрами a = 0 и b = 12</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7efcb989430335-2"><span class="crayon-c"># повторим экспермиент 1 000 000 раз</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7efcb989430335-3"><span class="crayon-v">res</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-v">np</span><span class="crayon-sy">.</span><span class="crayon-k ">random</span><span class="crayon-sy">.</span><span class="crayon-e">uniform</span><span class="crayon-sy">(</span><span class="crayon-cn">0</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-cn">12</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-cn">1000000</span><span class="crayon-sy">)</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7efcb989430335-4"><span class="crayon-h"> </span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7efcb989430335-5"><span class="crayon-c"># посмотрим на первые десять значений</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7efcb989430335-6"><span class="crayon-v">res</span><span class="crayon-sy">[</span><span class="crayon-o">:</span><span class="crayon-cn">10</span><span class="crayon-sy">]</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0004 seconds] --> </div> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51e7efdc397445058" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7efdc397445058-1">1</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7efdc397445058-2">2</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7efdc397445058-1">array([ 7.14186749, 4.37660571, 0.06450744, 6.73305271, 10.75884493,</div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7efdc397445058-2"> 6.38060282, 9.36585218, 1.94345171, 1.64757201, 10.72732251])</div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0000 seconds] --> </div> <p>Посмотрим на результат с помощью гистограммы.</p> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51e7efde624586132" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7efde624586132-1">1</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7efde624586132-2">2</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7efde624586132-1"><span class="crayon-v">plt</span><span class="crayon-sy">.</span><span class="crayon-e">hist</span><span class="crayon-sy">(</span><span class="crayon-v">res</span><span class="crayon-sy">)</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7efde624586132-2"><span class="crayon-v">plt</span><span class="crayon-sy">.</span><span class="crayon-e">show</span><span class="crayon-sy">(</span><span class="crayon-sy">)</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0001 seconds] --> </div> <figure class="wp-block-image size-full"><img decoding="async" width="393" height="248" src="https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/uniform-hist.png" alt="непрерывное равномерное распределение на Питоне" class="wp-image-11221" srcset="https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/uniform-hist.png 393w, https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/uniform-hist-300x189.png 300w" sizes="(max-width: 393px) 100vw, 393px" /></figure> <p>Посмотрим на среднее значение и дисперсию.</p> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51e7efdf552671863" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7efdf552671863-1">1</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7efdf552671863-1"><span class="crayon-v">np</span><span class="crayon-sy">.</span><span class="crayon-e">mean</span><span class="crayon-sy">(</span><span class="crayon-v">res</span><span class="crayon-sy">)</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0001 seconds] --> </div> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51e7efe0122522740" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7efe0122522740-1">1</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7efe0122522740-1">5.993743863584736</div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0000 seconds] --> </div> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51e7efe1042893417" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7efe1042893417-1">1</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7efe1042893417-1"><span class="crayon-v">np</span><span class="crayon-sy">.</span><span class="crayon-e">var</span><span class="crayon-sy">(</span><span class="crayon-v">res</span><span class="crayon-sy">)</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0001 seconds] --> </div> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51e7efe3722120519" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7efe3722120519-1">1</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7efe3722120519-1">11.986689948141048</div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0000 seconds] --> </div> <p>Теперь экспериметнальным путем найдем вероятность ожидания автобуса до семи минут включительно.</p> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51e7efe4750912975" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7efe4750912975-1">1</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7efe4750912975-2">2</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7efe4750912975-1"><span class="crayon-c"># разделим количество значений <= 7 на общее количество значений</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7efe4750912975-2"><span class="crayon-k ">len</span><span class="crayon-sy">(</span><span class="crayon-v">res</span><span class="crayon-sy">[</span><span class="crayon-v">res</span><span class="crayon-h"> </span><span class="crayon-o"><=</span><span class="crayon-h"> </span><span class="crayon-cn">7</span><span class="crayon-sy">]</span><span class="crayon-sy">)</span><span class="crayon-o">/</span><span class="crayon-k ">len</span><span class="crayon-sy">(</span><span class="crayon-v">res</span><span class="crayon-sy">)</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0002 seconds] --> </div> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51e7efe5322081844" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7efe5322081844-1">1</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7efe5322081844-1">0.584527</div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0000 seconds] --> </div> <h4 class="wp-block-heading" id="5-raznitsa-mezhdu-nprandomrandom-nprandomrand-i-nprandomuniform">Разница между np.random.random(), np.random.rand() и np.random.uniform()</h4> <p>Как вы заметили, мы использовали три функции для генерирования равномерного распределения.</p> <p>Функция <strong>np.random.random(size = None)</strong> создает равномерное распределение в полуоткрытом интервале [0, 1). Параметр size задает размер этого распределения (количество экспериментов).</p> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51e7efe6731129239" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7efe6731129239-1">1</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7efe6731129239-2">2</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7efe6731129239-3">3</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7efe6731129239-4">4</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7efe6731129239-5">5</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7efe6731129239-1"><span class="crayon-c"># создадим массив 2 x 3 в интервале от [0, 1)</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7efe6731129239-2"><span class="crayon-v">np</span><span class="crayon-sy">.</span><span class="crayon-k ">random</span><span class="crayon-sy">.</span><span class="crayon-e">seed</span><span class="crayon-sy">(</span><span class="crayon-cn">42</span><span class="crayon-sy">)</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7efe6731129239-3"><span class="crayon-h"> </span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7efe6731129239-4"><span class="crayon-c"># для этого передадим параметры в виде кортежа</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7efe6731129239-5"><span class="crayon-v">np</span><span class="crayon-sy">.</span><span class="crayon-k ">random</span><span class="crayon-sy">.</span><span class="crayon-k ">random</span><span class="crayon-sy">(</span><span class="crayon-sy">(</span><span class="crayon-cn">2</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-cn">3</span><span class="crayon-sy">)</span><span class="crayon-sy">)</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0002 seconds] --> </div> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51e7efe7977009237" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7efe7977009237-1">1</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7efe7977009237-2">2</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7efe7977009237-1">array([[0.37454012, 0.95071431, 0.73199394],</div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7efe7977009237-2"> [0.59865848, 0.15601864, 0.15599452]])</div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0000 seconds] --> </div> <p>Функция <strong>np.random.rand()</strong> практически идентична.</p> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51e7efe9044618699" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7efe9044618699-1">1</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7efe9044618699-2">2</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7efe9044618699-3">3</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7efe9044618699-1"><span class="crayon-c"># единственное отличие - размеры массива передаются отдельными параметрами, а не кортежем</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7efe9044618699-2"><span class="crayon-v">np</span><span class="crayon-sy">.</span><span class="crayon-k ">random</span><span class="crayon-sy">.</span><span class="crayon-e">seed</span><span class="crayon-sy">(</span><span class="crayon-cn">42</span><span class="crayon-sy">)</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7efe9044618699-3"><span class="crayon-v">np</span><span class="crayon-sy">.</span><span class="crayon-k ">random</span><span class="crayon-sy">.</span><span class="crayon-e">rand</span><span class="crayon-sy">(</span><span class="crayon-cn">2</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-cn">3</span><span class="crayon-sy">)</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0002 seconds] --> </div> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51e7efea027064674" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7efea027064674-1">1</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7efea027064674-2">2</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7efea027064674-1">array([[0.37454012, 0.95071431, 0.73199394],</div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7efea027064674-2"> [0.59865848, 0.15601864, 0.15599452]])</div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0000 seconds] --> </div> <p>Для функции <strong>np.random.uniform(low = 0.0, high = 1.0, size = None)</strong> интервал [0, 1) является интервалом по умолчанию, при этом можно задать любой другой промежуток (как мы и сделали выше).</p> <p>Приведем несколько примеров.</p> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51e7efeb598379329" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7efeb598379329-1">1</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7efeb598379329-2">2</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7efeb598379329-1"><span class="crayon-c"># сгенерируем одно значение из равномерного распределения в интервале [0, 9)</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7efeb598379329-2"><span class="crayon-v">np</span><span class="crayon-sy">.</span><span class="crayon-k ">random</span><span class="crayon-sy">.</span><span class="crayon-e">uniform</span><span class="crayon-sy">(</span><span class="crayon-cn">9</span><span class="crayon-sy">)</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0001 seconds] --> </div> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51e7efec716860682" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7efec716860682-1">1</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7efec716860682-1">7.545400262343195</div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0000 seconds] --> </div> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51e7efed707387174" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7efed707387174-1">1</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7efed707387174-2">2</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7efed707387174-3">3</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7efed707387174-1"><span class="crayon-c"># создадим двумерный массив 2 х 5 со значениями в промежутке [0, 1)</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7efed707387174-2"><span class="crayon-v">np</span><span class="crayon-sy">.</span><span class="crayon-k ">random</span><span class="crayon-sy">.</span><span class="crayon-e">seed</span><span class="crayon-sy">(</span><span class="crayon-cn">42</span><span class="crayon-sy">)</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7efed707387174-3"><span class="crayon-v">np</span><span class="crayon-sy">.</span><span class="crayon-k ">random</span><span class="crayon-sy">.</span><span class="crayon-e">uniform</span><span class="crayon-sy">(</span><span class="crayon-v">size</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-sy">(</span><span class="crayon-cn">2</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-cn">5</span><span class="crayon-sy">)</span><span class="crayon-sy">)</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0002 seconds] --> </div> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51e7efee195273763" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7efee195273763-1">1</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7efee195273763-2">2</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7efee195273763-1">array([[0.37454012, 0.95071431, 0.73199394, 0.59865848, 0.15601864],</div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7efee195273763-2"> [0.15599452, 0.05808361, 0.86617615, 0.60111501, 0.70807258]])</div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0000 seconds] --> </div> <p>Напоследок замечу, что равномерное непрерывное распределение является частным случаем бета-распределения с параметрами $Beta(1, 1)$.</p> <h3 class="wp-block-heading" id="6-normalnoe-raspredelenie">Нормальное распределение</h3> <p>На занятии по описательной статистике мы начали изучать количественные данные с примера <a href="https://www.dmitrymakarov.ru/intro/stats-08/#4-primer-rost-muzhchin-v-rossii">роста мужчин в России</a>. При этом интересно, что рост людей, как и многие другие величины (например, вес человека, артериальное давление, некоторые природные явления и так далее) имеют так называемое <strong>нормальное распределение</strong> (normal distribution).</p> <h4 class="wp-block-heading" id="7-funktsiya-plotnosti-normalnogo-raspredeleniya">Функция плотности нормального распределения</h4> <p>Функция плотности (pdf) нормального распределения случайной величины $X$ определяется функцией Гаусса и поэтому нормальное распределение также называется <strong>распределением Гаусса</strong> (Gauss distribution).</p> <p>$$ pdf(x, \mu, \sigma) = \frac{1}{\sigma \sqrt{2\pi}} e^{-\frac{1}{2} (\frac{x-\mu}{\sigma})^2} $$</p> <p>Как видно из формулы, единственными неизвестными параметрами являются $\mu$ («мю», матожидание) и $\sigma$ («сигма», среднее квадратическое отклонение, СКО). Именно они и определяют нормальное распределение.</p> <p>$$ X \sim {\mathcal N}(\mu, \sigma) $$</p> <p>Здесь важно напомнить, что среднее квадратическое отклонение (standard deviation) равно квадратному корню из дисперсии (variance).</p> <p>$$ \sigma = \sqrt{\sigma^2} $$</p> <h4 class="wp-block-heading" id="8-funktsiya-nprandomnormal">Функция np.random.normal()</h4> <p>В Питоне нормальное распределение создается с помощью <strong>функции np.random.normal()</strong>. Мы уже использовали ее, в частности, для создания данных о росте мужчин и женщин в <a href="https://colab.research.google.com/drive/15UtXiW9fWLlbQYEYCqU0kbr-US9oHEe5?usp=sharing" target="_blank" rel="noreferrer noopener">блокноте</a>⧉ к десятому занятию вводного курса. Повторим этот код, увеличив размер массива до 100 000.</p> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51e7eff0882558503" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7eff0882558503-1">1</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7eff0882558503-2">2</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7eff0882558503-3">3</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7eff0882558503-4">4</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7eff0882558503-5">5</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7eff0882558503-6">6</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7eff0882558503-7">7</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7eff0882558503-8">8</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7eff0882558503-1"><span class="crayon-c"># зададим точку отсчета</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7eff0882558503-2"><span class="crayon-v">np</span><span class="crayon-sy">.</span><span class="crayon-k ">random</span><span class="crayon-sy">.</span><span class="crayon-e">seed</span><span class="crayon-sy">(</span><span class="crayon-cn">42</span><span class="crayon-sy">)</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7eff0882558503-3"><span class="crayon-h"> </span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7eff0882558503-4"><span class="crayon-c"># создадим 100 000 значений нормально распределенной величины с матожиданием 180 см и СКО 10 см</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7eff0882558503-5"><span class="crayon-v">height_men</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-v">np</span><span class="crayon-sy">.</span><span class="crayon-k ">round</span><span class="crayon-sy">(</span><span class="crayon-v">np</span><span class="crayon-sy">.</span><span class="crayon-k ">random</span><span class="crayon-sy">.</span><span class="crayon-e">normal</span><span class="crayon-sy">(</span><span class="crayon-cn">180</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-cn">10</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-cn">100000</span><span class="crayon-sy">)</span><span class="crayon-sy">)</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7eff0882558503-6"><span class="crayon-h"> </span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7eff0882558503-7"><span class="crayon-c"># создадим еще одно распределение, но матожидание будет равно 160 см</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7eff0882558503-8"><span class="crayon-v">height_women</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-v">np</span><span class="crayon-sy">.</span><span class="crayon-k ">round</span><span class="crayon-sy">(</span><span class="crayon-v">np</span><span class="crayon-sy">.</span><span class="crayon-k ">random</span><span class="crayon-sy">.</span><span class="crayon-e">normal</span><span class="crayon-sy">(</span><span class="crayon-cn">160</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-cn">10</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-cn">100000</span><span class="crayon-sy">)</span><span class="crayon-sy">)</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0004 seconds] --> </div> <p>Посмотрим на результат.</p> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51e7eff2961465695" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7eff2961465695-1">1</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7eff2961465695-2">2</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7eff2961465695-1"><span class="crayon-k ">print</span><span class="crayon-sy">(</span><span class="crayon-v">height_men</span><span class="crayon-sy">[</span><span class="crayon-o">:</span><span class="crayon-cn">10</span><span class="crayon-sy">]</span><span class="crayon-sy">)</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7eff2961465695-2"><span class="crayon-k ">print</span><span class="crayon-sy">(</span><span class="crayon-v">height_women</span><span class="crayon-sy">[</span><span class="crayon-o">:</span><span class="crayon-cn">10</span><span class="crayon-sy">]</span><span class="crayon-sy">)</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0001 seconds] --> </div> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51e7eff3070884914" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7eff3070884914-1">1</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7eff3070884914-2">2</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7eff3070884914-1">[185. 179. 186. 195. 178. 178. 196. 188. 175. 185.]</div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7eff3070884914-2">[153. 157. 154. 161. 172. 152. 170. 152. 152. 168.]</div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0000 seconds] --> </div> <p>Для визуализации нормального распределения можно использовать несколько типов графиков. Например, можно использовать уже знакомую нам <a href="https://www.dmitrymakarov.ru/intro/relationship-10/#0-primer-rost-muzhchin-i-zhenshchin-v-rossii">гистограмму</a>.</p> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51e7eff4198262813" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7eff4198262813-1">1</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7eff4198262813-2">2</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7eff4198262813-3">3</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7eff4198262813-4">4</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7eff4198262813-5">5</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7eff4198262813-6">6</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7eff4198262813-7">7</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7eff4198262813-8">8</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7eff4198262813-9">9</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7eff4198262813-10">10</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7eff4198262813-11">11</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7eff4198262813-12">12</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7eff4198262813-13">13</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7eff4198262813-14">14</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7eff4198262813-15">15</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7eff4198262813-16">16</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7eff4198262813-1"><span class="crayon-c"># выведем результат с помощью гистограммы</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7eff4198262813-2"><span class="crayon-v">plt</span><span class="crayon-sy">.</span><span class="crayon-e">figure</span><span class="crayon-sy">(</span><span class="crayon-v">figsize</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-sy">(</span><span class="crayon-cn">10</span><span class="crayon-sy">,</span><span class="crayon-cn">6</span><span class="crayon-sy">)</span><span class="crayon-sy">)</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7eff4198262813-3"><span class="crayon-h"> </span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7eff4198262813-4"><span class="crayon-c"># зададим 18 интервалов (bin) и уровень прозрачности графиков</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7eff4198262813-5"><span class="crayon-v">plt</span><span class="crayon-sy">.</span><span class="crayon-e">hist</span><span class="crayon-sy">(</span><span class="crayon-v">height_men</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-cn">18</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">alpha</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-cn">0.5</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">label</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-s">'Рост мужчин'</span><span class="crayon-sy">)</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7eff4198262813-6"><span class="crayon-v">plt</span><span class="crayon-sy">.</span><span class="crayon-e">hist</span><span class="crayon-sy">(</span><span class="crayon-v">height_women</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-cn">18</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">alpha</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-cn">0.5</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">label</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-s">'Рост женщин'</span><span class="crayon-sy">)</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7eff4198262813-7"><span class="crayon-h"> </span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7eff4198262813-8"><span class="crayon-c"># пропишем расположение и размер шрифта легенды</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7eff4198262813-9"><span class="crayon-v">plt</span><span class="crayon-sy">.</span><span class="crayon-e">legend</span><span class="crayon-sy">(</span><span class="crayon-v">loc</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-s">'upper left'</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">prop</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-sy">{</span><span class="crayon-s">'size'</span><span class="crayon-o">:</span><span class="crayon-h"> </span><span class="crayon-cn">14</span><span class="crayon-sy">}</span><span class="crayon-sy">)</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7eff4198262813-10"><span class="crayon-h"> </span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7eff4198262813-11"><span class="crayon-c"># добавим подписи</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7eff4198262813-12"><span class="crayon-v">plt</span><span class="crayon-sy">.</span><span class="crayon-e">xlabel</span><span class="crayon-sy">(</span><span class="crayon-s">'Рост, см'</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">fontsize</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-cn">16</span><span class="crayon-sy">)</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7eff4198262813-13"><span class="crayon-v">plt</span><span class="crayon-sy">.</span><span class="crayon-e">ylabel</span><span class="crayon-sy">(</span><span class="crayon-s">'Количество людей'</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">fontsize</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-cn">16</span><span class="crayon-sy">)</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7eff4198262813-14"><span class="crayon-v">plt</span><span class="crayon-sy">.</span><span class="crayon-e">title</span><span class="crayon-sy">(</span><span class="crayon-s">'Распределение роста мужчин и женщин в России'</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">fontsize</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-cn">18</span><span class="crayon-sy">)</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7eff4198262813-15"><span class="crayon-h"> </span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7eff4198262813-16"><span class="crayon-v">plt</span><span class="crayon-sy">.</span><span class="crayon-e">show</span><span class="crayon-sy">(</span><span class="crayon-sy">)</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0007 seconds] --> </div> <figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="630" height="396" src="https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/two-histograms.png" alt="два нормальных распределения (гистограммы)" class="wp-image-11257" srcset="https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/two-histograms.png 630w, https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/two-histograms-300x189.png 300w, https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/two-histograms-600x377.png 600w" sizes="(max-width: 630px) 100vw, 630px" /></figure> <p>Также можно использовать <strong>график плотности</strong> (density plot) распределения случайной величины.</p> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51e7eff5173967322" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7eff5173967322-1">1</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7eff5173967322-2">2</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7eff5173967322-3">3</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7eff5173967322-4">4</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7eff5173967322-5">5</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7eff5173967322-6">6</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7eff5173967322-7">7</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7eff5173967322-8">8</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7eff5173967322-9">9</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7eff5173967322-10">10</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7eff5173967322-11">11</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7eff5173967322-12">12</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7eff5173967322-13">13</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7eff5173967322-14">14</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7eff5173967322-15">15</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7eff5173967322-16">16</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7eff5173967322-17">17</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7eff5173967322-18">18</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7eff5173967322-19">19</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7eff5173967322-1"><span class="crayon-c"># импортируем библиотеку seaborn</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7eff5173967322-2"><span class="crayon-r">import</span><span class="crayon-h"> </span><span class="crayon-e">seaborn </span><span class="crayon-st">as</span><span class="crayon-h"> </span><span class="crayon-i">sns</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7eff5173967322-3"><span class="crayon-h"> </span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7eff5173967322-4"><span class="crayon-c"># зададим размер графиков</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7eff5173967322-5"><span class="crayon-v">plt</span><span class="crayon-sy">.</span><span class="crayon-e">figure</span><span class="crayon-sy">(</span><span class="crayon-v">figsize</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-sy">(</span><span class="crayon-cn">10</span><span class="crayon-sy">,</span><span class="crayon-cn">6</span><span class="crayon-sy">)</span><span class="crayon-sy">)</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7eff5173967322-6"><span class="crayon-h"> </span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7eff5173967322-7"><span class="crayon-c"># и построим график функции плотности</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7eff5173967322-8"><span class="crayon-v">sns</span><span class="crayon-sy">.</span><span class="crayon-e">kdeplot</span><span class="crayon-sy">(</span><span class="crayon-v">height_men</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">fill</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-t">True</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">label</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-s">'Рост мужчин'</span><span class="crayon-sy">)</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7eff5173967322-9"><span class="crayon-v">sns</span><span class="crayon-sy">.</span><span class="crayon-e">kdeplot</span><span class="crayon-sy">(</span><span class="crayon-v">height_women</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">fill</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-t">True</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">label</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-s">'Рост женщин'</span><span class="crayon-sy">)</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7eff5173967322-10"><span class="crayon-h"> </span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7eff5173967322-11"><span class="crayon-c"># пропишем расположение и размер шрифта легенды</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7eff5173967322-12"><span class="crayon-v">plt</span><span class="crayon-sy">.</span><span class="crayon-e">legend</span><span class="crayon-sy">(</span><span class="crayon-v">loc</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-s">'upper left'</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">prop</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-sy">{</span><span class="crayon-s">'size'</span><span class="crayon-o">:</span><span class="crayon-h"> </span><span class="crayon-cn">14</span><span class="crayon-sy">}</span><span class="crayon-sy">)</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7eff5173967322-13"><span class="crayon-h"> </span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7eff5173967322-14"><span class="crayon-c"># добавим подписи</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7eff5173967322-15"><span class="crayon-v">plt</span><span class="crayon-sy">.</span><span class="crayon-e">xlabel</span><span class="crayon-sy">(</span><span class="crayon-s">'Рост, см'</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">fontsize</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-cn">16</span><span class="crayon-sy">)</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7eff5173967322-16"><span class="crayon-v">plt</span><span class="crayon-sy">.</span><span class="crayon-e">ylabel</span><span class="crayon-sy">(</span><span class="crayon-s">'Количество людей'</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">fontsize</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-cn">16</span><span class="crayon-sy">)</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7eff5173967322-17"><span class="crayon-v">plt</span><span class="crayon-sy">.</span><span class="crayon-e">title</span><span class="crayon-sy">(</span><span class="crayon-s">'Распределение роста мужчин и женщин в России'</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">fontsize</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-cn">18</span><span class="crayon-sy">)</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7eff5173967322-18"><span class="crayon-h"> </span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7eff5173967322-19"><span class="crayon-v">plt</span><span class="crayon-sy">.</span><span class="crayon-e">show</span><span class="crayon-sy">(</span><span class="crayon-sy">)</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0007 seconds] --> </div> <figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="626" height="396" src="https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/density-height.png" alt="два нормальных распределения (графики плотности)" class="wp-image-11425" srcset="https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/density-height.png 626w, https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/density-height-300x190.png 300w, https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/density-height-600x380.png 600w" sizes="(max-width: 626px) 100vw, 626px" /></figure> <p>Еще одной полезной визуализацией является так называемый <strong>boxplot</strong> (ящик с усами или диаграмма размаха).</p> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51e7eff7922347642" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7eff7922347642-1">1</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7eff7922347642-2">2</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7eff7922347642-3">3</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7eff7922347642-4">4</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7eff7922347642-5">5</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7eff7922347642-6">6</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7eff7922347642-1"><span class="crayon-c"># boxplot, как и многие другие графики, удобно строить из библиотеки Pandas</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7eff7922347642-2"><span class="crayon-r">import</span><span class="crayon-h"> </span><span class="crayon-e">pandas </span><span class="crayon-st">as</span><span class="crayon-h"> </span><span class="crayon-i">pd</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7eff7922347642-3"><span class="crayon-h"> </span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7eff7922347642-4"><span class="crayon-c"># создадим датафрейм из словаря, включающего два массива с данными о росте</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7eff7922347642-5"><span class="crayon-v">data</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-v">pd</span><span class="crayon-sy">.</span><span class="crayon-e">DataFrame</span><span class="crayon-sy">(</span><span class="crayon-sy">{</span><span class="crayon-s">'Мужчины'</span><span class="crayon-h"> </span><span class="crayon-o">:</span><span class="crayon-h"> </span><span class="crayon-v">height_men</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-s">'Женщины'</span><span class="crayon-h"> </span><span class="crayon-o">:</span><span class="crayon-h"> </span><span class="crayon-v">height_women</span><span class="crayon-sy">}</span><span class="crayon-sy">)</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7eff7922347642-6"><span class="crayon-v">data</span><span class="crayon-sy">.</span><span class="crayon-e">head</span><span class="crayon-sy">(</span><span class="crayon-sy">)</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0003 seconds] --> </div> <figure class="wp-block-image size-full is-resized"><img loading="lazy" decoding="async" width="214" height="248" src="https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/height-dataframe.png" alt="данные роста мужчин и женщин" class="wp-image-11261" style="width:203px;height:235px"/></figure> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51e7eff8751645082" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7eff8751645082-1">1</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7eff8751645082-2">2</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7eff8751645082-3">3</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7eff8751645082-4">4</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7eff8751645082-5">5</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7eff8751645082-6">6</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7eff8751645082-7">7</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7eff8751645082-8">8</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7eff8751645082-9">9</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7eff8751645082-10">10</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7eff8751645082-11">11</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7eff8751645082-12">12</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7eff8751645082-13">13</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7eff8751645082-14">14</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7eff8751645082-1"><span class="crayon-c"># зададим размер графика</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7eff8751645082-2"><span class="crayon-v">plt</span><span class="crayon-sy">.</span><span class="crayon-e">figure</span><span class="crayon-sy">(</span><span class="crayon-v">figsize</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-sy">(</span><span class="crayon-cn">10</span><span class="crayon-sy">,</span><span class="crayon-cn">6</span><span class="crayon-sy">)</span><span class="crayon-sy">)</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7eff8751645082-3"><span class="crayon-h"> </span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7eff8751645082-4"><span class="crayon-c"># и построим два вертикальных boxplots, передав датафрейм с данными в параметр data</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7eff8751645082-5"><span class="crayon-v">sns</span><span class="crayon-sy">.</span><span class="crayon-e">boxplot</span><span class="crayon-sy">(</span><span class="crayon-v">data</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-v">data</span><span class="crayon-sy">)</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7eff8751645082-6"><span class="crayon-h"> </span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7eff8751645082-7"><span class="crayon-c"># дополнительно укажем размер подписей каждого из графиков по оси x</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7eff8751645082-8"><span class="crayon-v">plt</span><span class="crayon-sy">.</span><span class="crayon-e">xticks</span><span class="crayon-sy">(</span><span class="crayon-v">fontsize</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-cn">14</span><span class="crayon-sy">)</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7eff8751645082-9"><span class="crayon-c"># подпись к оси y</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7eff8751645082-10"><span class="crayon-v">plt</span><span class="crayon-sy">.</span><span class="crayon-e">ylabel</span><span class="crayon-sy">(</span><span class="crayon-s">'Рост, см'</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">fontsize</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-cn">16</span><span class="crayon-sy">)</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7eff8751645082-11"><span class="crayon-c"># и заголовок графика</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7eff8751645082-12"><span class="crayon-v">plt</span><span class="crayon-sy">.</span><span class="crayon-e">title</span><span class="crayon-sy">(</span><span class="crayon-s">'Распределение роста мужчин и женщин в России'</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">fontsize</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-cn">17</span><span class="crayon-sy">)</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7eff8751645082-13"><span class="crayon-h"> </span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7eff8751645082-14"><span class="crayon-v">plt</span><span class="crayon-sy">.</span><span class="crayon-e">show</span><span class="crayon-sy">(</span><span class="crayon-sy">)</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0005 seconds] --> </div> <figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="617" height="381" src="https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/two-boxplots.png" alt="распределение роста мужчин и женщин в России (boxplots)" class="wp-image-11262" srcset="https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/two-boxplots.png 617w, https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/two-boxplots-300x185.png 300w, https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/two-boxplots-600x371.png 600w" sizes="(max-width: 617px) 100vw, 617px" /></figure> <p>Boxplot позволяет увидеть медиану (median), первый и третий квартили (Quartile 1, Q1 и Quartile 3, Q3), межквартильный размах (Interquartile Range, IQR), а также, что очень важно, так называемые выбросы (outliers), то есть значения, сильно отличающиеся от среднего (на графике выше они обозначены точками). Ни гистограмма, ни график плотности распределения этой информации не выводят.</p> <p>На рисунке ниже можно увидеть связь между boxplot и графиком плотности.</p> <div class="wp-block-image"> <figure class="aligncenter size-full is-resized"><img loading="lazy" decoding="async" width="800" height="872" src="https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/boxplot.svg_.png" alt="связь между boxplot и графиком плотности распределения случайной величины" class="wp-image-11251" style="width:693px;height:755px" srcset="https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/boxplot.svg_.png 800w, https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/boxplot.svg_-275x300.png 275w, https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/boxplot.svg_-768x837.png 768w, https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/boxplot.svg_-600x654.png 600w" sizes="(max-width: 800px) 100vw, 800px" /><figcaption class="wp-element-caption"><em>Источник: <a href="https://en.wikipedia.org/wiki/Box_plot" target="_blank" rel="noreferrer noopener">Википедия</a>⧉</em></figcaption></figure></div> <p>С $\sigma$ («сигма»), обозначающей среднее квадратическое отклонение, мы уже знакомы, а вот что такое квартиль, межквартильный размах и о том, что измеряют Q1 − 1.5 x IQR и Q3 + 1.5 x IQR мы поговорим на следующем курсе по <a href="https://www.dmitrymakarov.ru/data-analysis/">анализу и обработке данных</a>.</p> <p>Дополнительно приведу пример того, как можно совместить boxplot с гистограммой на Питоне.</p> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51e7eff9234814942" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7eff9234814942-1">1</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7eff9234814942-2">2</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7eff9234814942-3">3</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7eff9234814942-4">4</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7eff9234814942-5">5</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7eff9234814942-6">6</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7eff9234814942-7">7</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7eff9234814942-8">8</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7eff9234814942-9">9</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7eff9234814942-10">10</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7eff9234814942-11">11</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7eff9234814942-12">12</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7eff9234814942-13">13</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7eff9234814942-14">14</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7eff9234814942-15">15</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7eff9234814942-16">16</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7eff9234814942-17">17</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7eff9234814942-18">18</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7eff9234814942-1"><span class="crayon-c"># создадим два подграфика</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7eff9234814942-2"><span class="crayon-v">f</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-sy">(</span><span class="crayon-v">ax_box</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">ax_hist</span><span class="crayon-sy">)</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-v">plt</span><span class="crayon-sy">.</span><span class="crayon-e">subplots</span><span class="crayon-sy">(</span><span class="crayon-v">nrows</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-cn">2</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-c"># из двух строк</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7eff9234814942-3"><span class="crayon-h"> </span><span class="crayon-v">ncols</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-cn">1</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-c"># и одного столбца</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7eff9234814942-4"><span class="crayon-h"> </span><span class="crayon-v">sharex</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-t">True</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-c"># оставим только нижние подписи к оси x</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7eff9234814942-5"><span class="crayon-h"> </span><span class="crayon-v">gridspec_kw</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-sy">{</span><span class="crayon-s">'height_ratios'</span><span class="crayon-o">:</span><span class="crayon-h"> </span><span class="crayon-sy">(</span><span class="crayon-sy">.</span><span class="crayon-cn">15</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-sy">.</span><span class="crayon-cn">85</span><span class="crayon-sy">)</span><span class="crayon-sy">}</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-c"># зададим разную высоту строк</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7eff9234814942-6"><span class="crayon-h"> </span><span class="crayon-v">figsize</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-sy">(</span><span class="crayon-cn">12</span><span class="crayon-sy">,</span><span class="crayon-cn">8</span><span class="crayon-sy">)</span><span class="crayon-sy">)</span><span class="crayon-h"> </span><span class="crayon-c"># зададим размер графика</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7eff9234814942-7"><span class="crayon-h"> </span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7eff9234814942-8"><span class="crayon-c"># в первом подграфике построим boxplot</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7eff9234814942-9"><span class="crayon-v">sns</span><span class="crayon-sy">.</span><span class="crayon-e">boxplot</span><span class="crayon-sy">(</span><span class="crayon-v">x</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-v">height_men</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">ax</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-v">ax_box</span><span class="crayon-sy">)</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7eff9234814942-10"><span class="crayon-c"># во втором гистограмму</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7eff9234814942-11"><span class="crayon-v">sns</span><span class="crayon-sy">.</span><span class="crayon-e">histplot</span><span class="crayon-sy">(</span><span class="crayon-v">data</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-v">height_men</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">bins</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-cn">15</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">ax</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-v">ax_hist</span><span class="crayon-sy">)</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7eff9234814942-12"><span class="crayon-h"> </span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7eff9234814942-13"><span class="crayon-c"># зададим заголовок и подписи к осям</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7eff9234814942-14"><span class="crayon-v">ax_box</span><span class="crayon-sy">.</span><span class="crayon-e">set_title</span><span class="crayon-sy">(</span><span class="crayon-s">'Распределение роста мужчин в России'</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">fontsize</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-cn">17</span><span class="crayon-sy">)</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7eff9234814942-15"><span class="crayon-v">ax_hist</span><span class="crayon-sy">.</span><span class="crayon-e">set_xlabel</span><span class="crayon-sy">(</span><span class="crayon-s">'Рост, см'</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">fontsize</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-cn">15</span><span class="crayon-sy">)</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7eff9234814942-16"><span class="crayon-v">ax_hist</span><span class="crayon-sy">.</span><span class="crayon-e">set_ylabel</span><span class="crayon-sy">(</span><span class="crayon-s">'Количество людей'</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">fontsize</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-cn">15</span><span class="crayon-sy">)</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7eff9234814942-17"><span class="crayon-h"> </span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7eff9234814942-18"><span class="crayon-v">plt</span><span class="crayon-sy">.</span><span class="crayon-e">show</span><span class="crayon-sy">(</span><span class="crayon-sy">)</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0009 seconds] --> </div> <figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="741" height="505" src="https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/hist-boxplot.png" alt="boxplot и гистограмма на одном графике" class="wp-image-11291" srcset="https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/hist-boxplot.png 741w, https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/hist-boxplot-300x204.png 300w, https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/hist-boxplot-600x409.png 600w" sizes="(max-width: 741px) 100vw, 741px" /></figure> <h4 class="wp-block-heading" id="9-raschet-veroyatnosti">Расчет вероятности</h4> <p>Теперь давайте рассчитаем вероятность того, что рост случайно встретившегося нам человека на улице составляет менее 190 см.</p> <p class="has-background" style="background-color:#ffe8c4">Разумеется, для того, чтобы это утверждать мы должны допустить, что наши данные действительно отражают <a href="https://www.dmitrymakarov.ru/intro/inference-09/#0-vyborka-i-generalnaya-sovokupnost">генеральную совокупность</a>, то есть рост всех людей.</p> <p>Вначале рассчитаем <strong>теоретическую вероятность</strong>. Для создания «идеального» теоретического распределения воспользуемся библиотекой scipy.</p> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51e7effb826058587" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7effb826058587-1">1</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7effb826058587-2">2</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7effb826058587-3">3</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7effb826058587-4">4</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7effb826058587-5">5</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7effb826058587-6">6</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7effb826058587-7">7</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7effb826058587-8">8</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7effb826058587-9">9</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7effb826058587-10">10</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7effb826058587-11">11</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7effb826058587-12">12</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7effb826058587-13">13</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7effb826058587-14">14</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7effb826058587-15">15</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7effb826058587-16">16</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7effb826058587-17">17</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7effb826058587-18">18</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7effb826058587-19">19</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7effb826058587-20">20</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7effb826058587-1"><span class="crayon-c"># импортируем объект norm из модуля stats библиотеки scipy</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7effb826058587-2"><span class="crayon-st">from</span><span class="crayon-h"> </span><span class="crayon-v">scipy</span><span class="crayon-sy">.</span><span class="crayon-e">stats </span><span class="crayon-r">import</span><span class="crayon-h"> </span><span class="crayon-i">norm</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7effb826058587-3"><span class="crayon-h"> </span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7effb826058587-4"><span class="crayon-c"># зададим размер графика</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7effb826058587-5"><span class="crayon-v">plt</span><span class="crayon-sy">.</span><span class="crayon-e">figure</span><span class="crayon-sy">(</span><span class="crayon-v">figsize</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-sy">(</span><span class="crayon-cn">10</span><span class="crayon-sy">,</span><span class="crayon-cn">6</span><span class="crayon-sy">)</span><span class="crayon-sy">)</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7effb826058587-6"><span class="crayon-h"> </span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7effb826058587-7"><span class="crayon-c"># пропишем среднее значение и СКО</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7effb826058587-8"><span class="crayon-v">mean</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">std</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-cn">180</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-cn">10</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7effb826058587-9"><span class="crayon-h"> </span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7effb826058587-10"><span class="crayon-c"># создадим пространство из 1000 точек в диапазоне +/- трех СКО от среднего значения</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7effb826058587-11"><span class="crayon-v">x</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-v">np</span><span class="crayon-sy">.</span><span class="crayon-e">linspace</span><span class="crayon-sy">(</span><span class="crayon-v">mean</span><span class="crayon-h"> </span><span class="crayon-o">-</span><span class="crayon-h"> </span><span class="crayon-cn">3</span><span class="crayon-h"> </span><span class="crayon-o">*</span><span class="crayon-h"> </span><span class="crayon-v">std</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">mean</span><span class="crayon-h"> </span><span class="crayon-o">+</span><span class="crayon-h"> </span><span class="crayon-cn">3</span><span class="crayon-h"> </span><span class="crayon-o">*</span><span class="crayon-h"> </span><span class="crayon-v">std</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-cn">1000</span><span class="crayon-sy">)</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7effb826058587-12"><span class="crayon-h"> </span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7effb826058587-13"><span class="crayon-c"># рассчитаем значения по оси y с помощью метода .pdf()</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7effb826058587-14"><span class="crayon-c"># т.е. функции плотности распределения</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7effb826058587-15"><span class="crayon-v">f</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-v">norm</span><span class="crayon-sy">.</span><span class="crayon-e">pdf</span><span class="crayon-sy">(</span><span class="crayon-v">x</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">mean</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">std</span><span class="crayon-sy">)</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7effb826058587-16"><span class="crayon-h"> </span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7effb826058587-17"><span class="crayon-c"># и построим график</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7effb826058587-18"><span class="crayon-v">plt</span><span class="crayon-sy">.</span><span class="crayon-e">plot</span><span class="crayon-sy">(</span><span class="crayon-v">x</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">f</span><span class="crayon-sy">)</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7effb826058587-19"><span class="crayon-h"> </span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7effb826058587-20"><span class="crayon-v">plt</span><span class="crayon-sy">.</span><span class="crayon-e">show</span><span class="crayon-sy">(</span><span class="crayon-sy">)</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0006 seconds] --> </div> <figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="607" height="357" src="https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/normal-curve.png" alt="теоретическая вероятность нормального распределения" class="wp-image-11292" srcset="https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/normal-curve.png 607w, https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/normal-curve-300x176.png 300w, https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/normal-curve-600x353.png 600w" sizes="(max-width: 607px) 100vw, 607px" /></figure> <p>Как и в случае с равномерным распределением задача сводится к нахождению площади под кривой от минус бесконечности до 190 см включительно.</p> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51e7effd596987339" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7effd596987339-1">1</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7effd596987339-2">2</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7effd596987339-3">3</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7effd596987339-4">4</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7effd596987339-5">5</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7effd596987339-6">6</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7effd596987339-7">7</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7effd596987339-8">8</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7effd596987339-9">9</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7effd596987339-10">10</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7effd596987339-11">11</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7effd596987339-12">12</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7effd596987339-13">13</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7effd596987339-14">14</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7effd596987339-15">15</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7effd596987339-16">16</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7effd596987339-17">17</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7effd596987339-18">18</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7effd596987339-19">19</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7effd596987339-20">20</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7effd596987339-21">21</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7effd596987339-22">22</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7effd596987339-23">23</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7effd596987339-24">24</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7effd596987339-25">25</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7effd596987339-1"><span class="crayon-c"># зададим размер графика</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7effd596987339-2"><span class="crayon-v">plt</span><span class="crayon-sy">.</span><span class="crayon-e">figure</span><span class="crayon-sy">(</span><span class="crayon-v">figsize</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-sy">(</span><span class="crayon-cn">10</span><span class="crayon-sy">,</span><span class="crayon-cn">6</span><span class="crayon-sy">)</span><span class="crayon-sy">)</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7effd596987339-3"><span class="crayon-h"> </span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7effd596987339-4"><span class="crayon-c"># пропишем среднее значение и СКО</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7effd596987339-5"><span class="crayon-v">mean</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">std</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-cn">180</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-cn">10</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7effd596987339-6"><span class="crayon-h"> </span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7effd596987339-7"><span class="crayon-c"># создадим пространство из 1000 точек в диапазоне +/- трех СКО от среднего значения</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7effd596987339-8"><span class="crayon-v">x</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-v">np</span><span class="crayon-sy">.</span><span class="crayon-e">linspace</span><span class="crayon-sy">(</span><span class="crayon-v">mean</span><span class="crayon-h"> </span><span class="crayon-o">-</span><span class="crayon-h"> </span><span class="crayon-cn">3</span><span class="crayon-h"> </span><span class="crayon-o">*</span><span class="crayon-h"> </span><span class="crayon-v">std</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">mean</span><span class="crayon-h"> </span><span class="crayon-o">+</span><span class="crayon-h"> </span><span class="crayon-cn">3</span><span class="crayon-h"> </span><span class="crayon-o">*</span><span class="crayon-h"> </span><span class="crayon-v">std</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-cn">1000</span><span class="crayon-sy">)</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7effd596987339-9"><span class="crayon-h"> </span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7effd596987339-10"><span class="crayon-c"># рассчитаем значения по оси y с помощью метода .pdf()</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7effd596987339-11"><span class="crayon-c"># т.е. функции плотности распределения</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7effd596987339-12"><span class="crayon-v">f</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-v">norm</span><span class="crayon-sy">.</span><span class="crayon-e">pdf</span><span class="crayon-sy">(</span><span class="crayon-v">x</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">mean</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">std</span><span class="crayon-sy">)</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7effd596987339-13"><span class="crayon-h"> </span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7effd596987339-14"><span class="crayon-c"># и построим график</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7effd596987339-15"><span class="crayon-v">plt</span><span class="crayon-sy">.</span><span class="crayon-e">plot</span><span class="crayon-sy">(</span><span class="crayon-v">x</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">f</span><span class="crayon-sy">)</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7effd596987339-16"><span class="crayon-h"> </span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7effd596987339-17"><span class="crayon-c"># дополнительно создадим точки на оси х для закрашенной области</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7effd596987339-18"><span class="crayon-v">px</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-v">np</span><span class="crayon-sy">.</span><span class="crayon-e">linspace</span><span class="crayon-sy">(</span><span class="crayon-v">mean</span><span class="crayon-h"> </span><span class="crayon-o">-</span><span class="crayon-h"> </span><span class="crayon-cn">3</span><span class="crayon-h"> </span><span class="crayon-o">*</span><span class="crayon-h"> </span><span class="crayon-v">std</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-cn">190</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-cn">1000</span><span class="crayon-sy">)</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7effd596987339-19"><span class="crayon-h"> </span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7effd596987339-20"><span class="crayon-c"># и заполним в пределах этих точек по оси x пространство</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7effd596987339-21"><span class="crayon-c"># от кривой нормального распределения до оси y = 0</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7effd596987339-22"><span class="crayon-v">plt</span><span class="crayon-sy">.</span><span class="crayon-e">fill_between</span><span class="crayon-sy">(</span><span class="crayon-v">px</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">norm</span><span class="crayon-sy">.</span><span class="crayon-e">pdf</span><span class="crayon-sy">(</span><span class="crayon-v">px</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">mean</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">std</span><span class="crayon-sy">)</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">alpha</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-cn">0.3</span><span class="crayon-sy">)</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7effd596987339-23"><span class="crayon-h"> </span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7effd596987339-24"><span class="crayon-c"># выведем оба графика</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7effd596987339-25"><span class="crayon-v">plt</span><span class="crayon-sy">.</span><span class="crayon-e">show</span><span class="crayon-sy">(</span><span class="crayon-sy">)</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0009 seconds] --> </div> <figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="607" height="357" src="https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/190.png" alt="нахождение площади под кривой нормального распределения" class="wp-image-11296" srcset="https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/190.png 607w, https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/190-300x176.png 300w, https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/190-600x353.png 600w" sizes="(max-width: 607px) 100vw, 607px" /></figure> <p>Для нахождения площади можно воспользоваться одним из многочисленных <a href="https://www.hackmath.net/en/calculator/normal-distribution" target="_blank" rel="noreferrer noopener">онлайн-калькуляторов</a>⧉.</p> <figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="1024" height="624" src="https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/normal-distribution-calculator-1024x624.png" alt="онлайн-калькулятор нахождения площади под кривой нормального распределения" class="wp-image-11317" srcset="https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/normal-distribution-calculator-1024x624.png 1024w, https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/normal-distribution-calculator-300x183.png 300w, https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/normal-distribution-calculator-768x468.png 768w, https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/normal-distribution-calculator-1200x731.png 1200w, https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/normal-distribution-calculator-600x366.png 600w, https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/normal-distribution-calculator.png 1214w" sizes="(max-width: 1024px) 100vw, 1024px" /></figure> <p>На Питоне это вычисление можно выполнить с помощью <strong>функции распределения</strong> (cumulative density function, cdf).</p> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51e7efff224141167" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7efff224141167-1">1</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7efff224141167-2">2</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7efff224141167-3">3</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7efff224141167-4">4</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7efff224141167-5">5</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7efff224141167-1"><span class="crayon-c"># передадим методу .cdf() границу (рост), среднее значение (loc) и СКО (scale)</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7efff224141167-2"><span class="crayon-v">area</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-v">norm</span><span class="crayon-sy">.</span><span class="crayon-e">cdf</span><span class="crayon-sy">(</span><span class="crayon-cn">190</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">loc</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-cn">180</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">scale</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-cn">10</span><span class="crayon-sy">)</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7efff224141167-3"><span class="crayon-h"> </span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7efff224141167-4"><span class="crayon-c"># на выходе мы получим площадь под кривой</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7efff224141167-5"><span class="crayon-v">area</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0002 seconds] --> </div> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51e7f000921798728" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f000921798728-1">1</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f000921798728-1">0.8413447460685429</div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0000 seconds] --> </div> <p>Обратное вычисление, то есть нахождение значения (роста) по площади выполняется с помощью <strong>квантиль-функции</strong> (percent point function, ppf).</p> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51e7f002504997647" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f002504997647-1">1</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f002504997647-2">2</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f002504997647-3">3</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f002504997647-1"><span class="crayon-c"># с помощью метода .ppf() можно узнать значение (рост) по площади</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f002504997647-2"><span class="crayon-v">height</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-v">norm</span><span class="crayon-sy">.</span><span class="crayon-e">ppf</span><span class="crayon-sy">(</span><span class="crayon-v">area</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">loc</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-cn">180</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">scale</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-cn">10</span><span class="crayon-sy">)</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f002504997647-3"><span class="crayon-v">height</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0002 seconds] --> </div> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51e7f003498817204" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f003498817204-1">1</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f003498817204-1">190.0</div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0000 seconds] --> </div> <p>Рассчитать вероятность того, что нам встретится человек выше 190 см очень просто. Так как мы знаем, что площадь под кривой нормального распределения равна единице, нам достаточно вычесть найденную слева от 190 см площадь из одного.</p> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51e7f004928514226" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f004928514226-1">1</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f004928514226-2">2</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f004928514226-1"><span class="crayon-c"># рассчитаем вероятность встретить человека выше 190 см</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f004928514226-2"><span class="crayon-cn">1</span><span class="crayon-h"> </span><span class="crayon-o">-</span><span class="crayon-h"> </span><span class="crayon-v">norm</span><span class="crayon-sy">.</span><span class="crayon-e">cdf</span><span class="crayon-sy">(</span><span class="crayon-cn">190</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">loc</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-cn">180</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">scale</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-cn">10</span><span class="crayon-sy">)</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0002 seconds] --> </div> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51e7f005732778499" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f005732778499-1">1</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f005732778499-1">0.15865525393145707</div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0000 seconds] --> </div> <p>Так мы получим площадь справа от заданной границы. Посмотрим, как это выглядит на графике.</p> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51e7f006595225660" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f006595225660-1">1</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f006595225660-2">2</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f006595225660-3">3</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f006595225660-4">4</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f006595225660-5">5</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f006595225660-6">6</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f006595225660-7">7</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f006595225660-8">8</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f006595225660-9">9</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f006595225660-10">10</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f006595225660-11">11</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f006595225660-12">12</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f006595225660-13">13</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f006595225660-14">14</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f006595225660-15">15</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f006595225660-16">16</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f006595225660-17">17</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f006595225660-18">18</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f006595225660-19">19</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f006595225660-20">20</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f006595225660-21">21</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f006595225660-22">22</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f006595225660-23">23</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f006595225660-24">24</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f006595225660-25">25</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f006595225660-1"><span class="crayon-c"># зададим размер графика</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f006595225660-2"><span class="crayon-v">plt</span><span class="crayon-sy">.</span><span class="crayon-e">figure</span><span class="crayon-sy">(</span><span class="crayon-v">figsize</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-sy">(</span><span class="crayon-cn">10</span><span class="crayon-sy">,</span><span class="crayon-cn">6</span><span class="crayon-sy">)</span><span class="crayon-sy">)</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f006595225660-3"><span class="crayon-h"> </span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f006595225660-4"><span class="crayon-c"># пропишем среднее значение и СКО</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f006595225660-5"><span class="crayon-v">mean</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">std</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-cn">180</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-cn">10</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f006595225660-6"><span class="crayon-h"> </span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f006595225660-7"><span class="crayon-c"># создадим пространство из 1000 точек в диапазоне +/- трех СКО от среднего значения</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f006595225660-8"><span class="crayon-v">x</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-v">np</span><span class="crayon-sy">.</span><span class="crayon-e">linspace</span><span class="crayon-sy">(</span><span class="crayon-v">mean</span><span class="crayon-h"> </span><span class="crayon-o">-</span><span class="crayon-h"> </span><span class="crayon-cn">3</span><span class="crayon-h"> </span><span class="crayon-o">*</span><span class="crayon-h"> </span><span class="crayon-v">std</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">mean</span><span class="crayon-h"> </span><span class="crayon-o">+</span><span class="crayon-h"> </span><span class="crayon-cn">3</span><span class="crayon-h"> </span><span class="crayon-o">*</span><span class="crayon-h"> </span><span class="crayon-v">std</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-cn">1000</span><span class="crayon-sy">)</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f006595225660-9"><span class="crayon-h"> </span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f006595225660-10"><span class="crayon-c"># рассчитаем значения по оси y с помощью метода .pdf()</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f006595225660-11"><span class="crayon-c"># т.е. функции плотности распределения</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f006595225660-12"><span class="crayon-v">f</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-v">norm</span><span class="crayon-sy">.</span><span class="crayon-e">pdf</span><span class="crayon-sy">(</span><span class="crayon-v">x</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">mean</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">std</span><span class="crayon-sy">)</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f006595225660-13"><span class="crayon-h"> </span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f006595225660-14"><span class="crayon-c"># и построим график</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f006595225660-15"><span class="crayon-v">plt</span><span class="crayon-sy">.</span><span class="crayon-e">plot</span><span class="crayon-sy">(</span><span class="crayon-v">x</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">f</span><span class="crayon-sy">)</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f006595225660-16"><span class="crayon-h"> </span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f006595225660-17"><span class="crayon-c"># дополнительно создадим точки на оси х для закрашенной области</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f006595225660-18"><span class="crayon-v">px</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-v">np</span><span class="crayon-sy">.</span><span class="crayon-e">linspace</span><span class="crayon-sy">(</span><span class="crayon-cn">190</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">mean</span><span class="crayon-h"> </span><span class="crayon-o">+</span><span class="crayon-h"> </span><span class="crayon-cn">3</span><span class="crayon-h"> </span><span class="crayon-o">*</span><span class="crayon-h"> </span><span class="crayon-v">std</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-cn">1000</span><span class="crayon-sy">)</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f006595225660-19"><span class="crayon-h"> </span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f006595225660-20"><span class="crayon-c"># и заполним в пределах этих точек по оси x пространство</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f006595225660-21"><span class="crayon-c"># от кривой нормального распределения до оси y = 0</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f006595225660-22"><span class="crayon-v">plt</span><span class="crayon-sy">.</span><span class="crayon-e">fill_between</span><span class="crayon-sy">(</span><span class="crayon-v">px</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">norm</span><span class="crayon-sy">.</span><span class="crayon-e">pdf</span><span class="crayon-sy">(</span><span class="crayon-v">px</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">mean</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">std</span><span class="crayon-sy">)</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">alpha</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-cn">0.3</span><span class="crayon-sy">)</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f006595225660-23"><span class="crayon-h"> </span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f006595225660-24"><span class="crayon-c"># выведем оба графика</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f006595225660-25"><span class="crayon-v">plt</span><span class="crayon-sy">.</span><span class="crayon-e">show</span><span class="crayon-sy">(</span><span class="crayon-sy">)</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0009 seconds] --> </div> <figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="607" height="357" src="https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/190-more.png" alt="площадь справа от заданной границы" class="wp-image-11322" srcset="https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/190-more.png 607w, https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/190-more-300x176.png 300w, https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/190-more-600x353.png 600w" sizes="(max-width: 607px) 100vw, 607px" /></figure> <p>Если нужно вычислить площадь между двумя значениями $a$ и $b$, например, между 170 и 190 см, из большего, находящегося правее значения функции распределения, можно вычесть меньшее, находящееся левее.</p> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51e7f007292343796" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f007292343796-1">1</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f007292343796-2">2</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f007292343796-3">3</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f007292343796-4">4</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f007292343796-5">5</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f007292343796-6">6</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f007292343796-7">7</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f007292343796-8">8</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f007292343796-1"><span class="crayon-c"># рассчитаем меньшую площадь до нижней границы</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f007292343796-2"><span class="crayon-v">lowerbound</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-v">norm</span><span class="crayon-sy">.</span><span class="crayon-e">cdf</span><span class="crayon-sy">(</span><span class="crayon-cn">170</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">loc</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-cn">180</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">scale</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-cn">10</span><span class="crayon-sy">)</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f007292343796-3"><span class="crayon-h"> </span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f007292343796-4"><span class="crayon-c"># рассчитаем большую площадь до верхней границы</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f007292343796-5"><span class="crayon-v">upperbound</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-v">norm</span><span class="crayon-sy">.</span><span class="crayon-e">cdf</span><span class="crayon-sy">(</span><span class="crayon-cn">190</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">loc</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-cn">180</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">scale</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-cn">10</span><span class="crayon-sy">)</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f007292343796-6"><span class="crayon-h"> </span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f007292343796-7"><span class="crayon-c"># вычтем меньшую площадь из большей</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f007292343796-8"><span class="crayon-v">upperbound</span><span class="crayon-h"> </span><span class="crayon-o">-</span><span class="crayon-h"> </span><span class="crayon-v">lowerbound</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0004 seconds] --> </div> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51e7f009842643628" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f009842643628-1">1</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f009842643628-1">0.6826894921370859</div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0000 seconds] --> </div> <p>Посмотрим на этот участок на графике.</p> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51e7f00a738764535" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f00a738764535-1">1</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f00a738764535-2">2</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f00a738764535-3">3</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f00a738764535-4">4</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f00a738764535-5">5</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f00a738764535-6">6</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f00a738764535-7">7</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f00a738764535-8">8</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f00a738764535-9">9</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f00a738764535-10">10</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f00a738764535-11">11</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f00a738764535-12">12</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f00a738764535-13">13</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f00a738764535-14">14</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f00a738764535-15">15</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f00a738764535-16">16</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f00a738764535-17">17</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f00a738764535-18">18</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f00a738764535-19">19</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f00a738764535-20">20</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f00a738764535-21">21</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f00a738764535-22">22</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f00a738764535-23">23</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f00a738764535-24">24</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f00a738764535-25">25</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f00a738764535-1"><span class="crayon-c"># зададим размер графика</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f00a738764535-2"><span class="crayon-v">plt</span><span class="crayon-sy">.</span><span class="crayon-e">figure</span><span class="crayon-sy">(</span><span class="crayon-v">figsize</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-sy">(</span><span class="crayon-cn">10</span><span class="crayon-sy">,</span><span class="crayon-cn">6</span><span class="crayon-sy">)</span><span class="crayon-sy">)</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f00a738764535-3"><span class="crayon-h"> </span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f00a738764535-4"><span class="crayon-c"># пропишем среднее значение и СКО</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f00a738764535-5"><span class="crayon-v">mean</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">std</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-cn">180</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-cn">10</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f00a738764535-6"><span class="crayon-h"> </span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f00a738764535-7"><span class="crayon-c"># создадим пространство из 1000 точек в диапазоне +/- трех СКО от среднего значения</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f00a738764535-8"><span class="crayon-v">x</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-v">np</span><span class="crayon-sy">.</span><span class="crayon-e">linspace</span><span class="crayon-sy">(</span><span class="crayon-v">mean</span><span class="crayon-h"> </span><span class="crayon-o">-</span><span class="crayon-h"> </span><span class="crayon-cn">3</span><span class="crayon-h"> </span><span class="crayon-o">*</span><span class="crayon-h"> </span><span class="crayon-v">std</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">mean</span><span class="crayon-h"> </span><span class="crayon-o">+</span><span class="crayon-h"> </span><span class="crayon-cn">3</span><span class="crayon-h"> </span><span class="crayon-o">*</span><span class="crayon-h"> </span><span class="crayon-v">std</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-cn">1000</span><span class="crayon-sy">)</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f00a738764535-9"><span class="crayon-h"> </span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f00a738764535-10"><span class="crayon-c"># рассчитаем значения по оси y с помощью метода .pdf()</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f00a738764535-11"><span class="crayon-c"># т.е. функции плотности распределения</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f00a738764535-12"><span class="crayon-v">f</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-v">norm</span><span class="crayon-sy">.</span><span class="crayon-e">pdf</span><span class="crayon-sy">(</span><span class="crayon-v">x</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">mean</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">std</span><span class="crayon-sy">)</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f00a738764535-13"><span class="crayon-h"> </span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f00a738764535-14"><span class="crayon-c"># и построим график</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f00a738764535-15"><span class="crayon-v">plt</span><span class="crayon-sy">.</span><span class="crayon-e">plot</span><span class="crayon-sy">(</span><span class="crayon-v">x</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">f</span><span class="crayon-sy">)</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f00a738764535-16"><span class="crayon-h"> </span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f00a738764535-17"><span class="crayon-c"># дополнительно создадим точки на оси х для закрашенной области</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f00a738764535-18"><span class="crayon-v">px</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-v">np</span><span class="crayon-sy">.</span><span class="crayon-e">linspace</span><span class="crayon-sy">(</span><span class="crayon-cn">170</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-cn">190</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-cn">1000</span><span class="crayon-sy">)</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f00a738764535-19"><span class="crayon-h"> </span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f00a738764535-20"><span class="crayon-c"># и заполним в пределах этих точек по оси x пространство</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f00a738764535-21"><span class="crayon-c"># от кривой нормального распределения до оси y = 0</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f00a738764535-22"><span class="crayon-v">plt</span><span class="crayon-sy">.</span><span class="crayon-e">fill_between</span><span class="crayon-sy">(</span><span class="crayon-v">px</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">norm</span><span class="crayon-sy">.</span><span class="crayon-e">pdf</span><span class="crayon-sy">(</span><span class="crayon-v">px</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">mean</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">std</span><span class="crayon-sy">)</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">alpha</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-cn">0.3</span><span class="crayon-sy">)</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f00a738764535-23"><span class="crayon-h"> </span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f00a738764535-24"><span class="crayon-c"># выведем оба графика</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f00a738764535-25"><span class="crayon-v">plt</span><span class="crayon-sy">.</span><span class="crayon-e">show</span><span class="crayon-sy">(</span><span class="crayon-sy">)</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0008 seconds] --> </div> <figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="607" height="357" src="https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/170-190.png" alt="площадь между двумя значениями" class="wp-image-11323" srcset="https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/170-190.png 607w, https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/170-190-300x176.png 300w, https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/170-190-600x353.png 600w" sizes="(max-width: 607px) 100vw, 607px" /></figure> <p>Теперь вернемся к нашим данным и рассчитаем эмпирическую вероятность встретить человека с ростом не более 190 см.</p> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51e7f00b378836982" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f00b378836982-1">1</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f00b378836982-2">2</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f00b378836982-1"><span class="crayon-c"># разделим количество людей с ростом <= 190 на общее количество наблюдений</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f00b378836982-2"><span class="crayon-k ">len</span><span class="crayon-sy">(</span><span class="crayon-v">height_men</span><span class="crayon-sy">[</span><span class="crayon-v">height_men</span><span class="crayon-h"> </span><span class="crayon-o"><=</span><span class="crayon-h"> </span><span class="crayon-cn">190</span><span class="crayon-sy">]</span><span class="crayon-sy">)</span><span class="crayon-o">/</span><span class="crayon-k ">len</span><span class="crayon-sy">(</span><span class="crayon-v">height_men</span><span class="crayon-sy">)</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0002 seconds] --> </div> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51e7f00c429188814" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f00c429188814-1">1</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f00c429188814-1">0.85195</div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0000 seconds] --> </div> <p>В целом результат близок к найденному аналитическому решению.</p> <h4 class="wp-block-heading" id="10-funktsiya-plotnosti-i-funktsiya-raspredeleniya">Функция плотности и функция распределения</h4> <p>Рассмотрим связь функции плотности, обозначим ее $P(x)$, и функции распределения $D(x)$. Напомню, что функция плотности нормального распределения определяется по формуле</p> <p>$$ P(x) = \frac{1}{\sigma \sqrt{2\pi}} e^{-\frac{1}{2} (\frac{x-\mu}{\sigma})^2} $$</p> <p>При этом вот что мы успели про нее узнать:</p> <ol class="wp-block-list"> <li>Вероятность того, что случайная величина примет значение не более заданного в интервале $(- \infty ; x]$ равна площади под кривой функции плотности на этом промежутке;</li> <li>Эта площадь вычисляется с помощью функции распределения.</li> </ol> <p>Одновременно, известно, что площадь под кривой определяется как интеграл функции этой кривой на заданном промежутке.</p> <p class="has-background" style="background-color:#ffe8c4">Значит <strong>функция распределения</strong> $D(x)$ есть <em>интеграл</em> <strong>функции плотности</strong> $P(x)$.</p> <p>Математически это выражается так.</p> <p>$$ D(x) = \int_{-\infty}^{x} P(x) dx $$</p> <p>Тема интегрирования выходит за рамки сегодняшнего занятия, однако давайте попробуем на уровне интуиции понять, как связаны функция плотности и функция распределения через нахождение интеграла.</p> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51e7f00d371064080" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f00d371064080-1">1</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f00d371064080-2">2</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f00d371064080-3">3</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f00d371064080-4">4</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f00d371064080-5">5</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f00d371064080-6">6</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f00d371064080-7">7</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f00d371064080-8">8</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f00d371064080-9">9</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f00d371064080-10">10</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f00d371064080-11">11</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f00d371064080-12">12</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f00d371064080-13">13</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f00d371064080-14">14</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f00d371064080-15">15</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f00d371064080-16">16</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f00d371064080-17">17</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f00d371064080-18">18</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f00d371064080-19">19</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f00d371064080-20">20</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f00d371064080-21">21</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f00d371064080-22">22</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f00d371064080-23">23</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f00d371064080-24">24</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f00d371064080-25">25</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f00d371064080-26">26</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f00d371064080-27">27</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f00d371064080-28">28</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f00d371064080-29">29</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f00d371064080-30">30</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f00d371064080-31">31</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f00d371064080-32">32</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f00d371064080-33">33</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f00d371064080-34">34</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f00d371064080-35">35</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f00d371064080-36">36</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f00d371064080-37">37</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f00d371064080-38">38</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f00d371064080-39">39</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f00d371064080-40">40</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f00d371064080-41">41</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f00d371064080-42">42</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f00d371064080-43">43</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f00d371064080-44">44</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f00d371064080-45">45</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f00d371064080-46">46</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f00d371064080-47">47</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f00d371064080-48">48</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f00d371064080-49">49</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size: … [Строка слишком длинная. Вы можете скачать файл] </tr> </table> </div> </div> <!-- [Format Time: 0.0023 seconds] --> </div> <figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="850" height="611" src="https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/pdf_and_cdf_relationship.png" alt="функция распределения есть интеграл функции плотности " class="wp-image-11617" srcset="https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/pdf_and_cdf_relationship.png 850w, https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/pdf_and_cdf_relationship-300x216.png 300w, https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/pdf_and_cdf_relationship-768x552.png 768w, https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/pdf_and_cdf_relationship-600x431.png 600w" sizes="(max-width: 850px) 100vw, 850px" /></figure> <p>Вначале обратимся к графику слева. Как мы видим, вероятность встретить человека не более 180 см составляет 0,5 (закрашенный синим участок). Одновременно, проинтегрировав функцию плотности на интервале $(- \infty ; 180 ]$, на графике справа мы видим, что «накопленная» вероятность составляет 0,5, и именно эту вероятность нам показывает график функции распределения на отметке x = 180.</p> <p>Продолжим исследовать связь функции плотности и функции распределения.</p> <p class="has-background" style="background-color:#ffe8c4">Если функция распределения есть интеграл функции плотности, то <strong>плотность вероятности</strong> $P(x)$ является <em>производной</em> <strong>функции распределения</strong> $D(x)$.</p> <p>Приведем формулу.</p> <p>$$ P(x) = D'(x) $$</p> <p>Хотя опять же тему дифференцирования (то есть нахождения производной) мы будем разбирать на курсе по <a href="https://www.dmitrymakarov.ru/opt/">оптимизации</a>, ничто не мешает нам начать знакомиться с ней прямо сейчас.</p> <p>Совместим обе функции на одном графике.</p> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51e7f00f788940961" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f00f788940961-1">1</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f00f788940961-2">2</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f00f788940961-3">3</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f00f788940961-4">4</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f00f788940961-5">5</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f00f788940961-6">6</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f00f788940961-7">7</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f00f788940961-8">8</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f00f788940961-9">9</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f00f788940961-10">10</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f00f788940961-11">11</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f00f788940961-12">12</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f00f788940961-13">13</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f00f788940961-14">14</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f00f788940961-15">15</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f00f788940961-16">16</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f00f788940961-17">17</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f00f788940961-18">18</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f00f788940961-19">19</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f00f788940961-20">20</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f00f788940961-21">21</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f00f788940961-22">22</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f00f788940961-23">23</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f00f788940961-24">24</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f00f788940961-25">25</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f00f788940961-26">26</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f00f788940961-27">27</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f00f788940961-28">28</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f00f788940961-29">29</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f00f788940961-30">30</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f00f788940961-31">31</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size: … [Строка слишком длинная. Вы можете скачать файл] </tr> </table> </div> </div> <!-- [Format Time: 0.0015 seconds] --> </div> <figure class="wp-block-image size-large is-resized"><img loading="lazy" decoding="async" width="1024" height="655" src="https://www.dmitrymakarov.ru/wp-content/uploads/2024/04/image_f-1024x655.png" alt="плотность вероятности является производной функции распределения" class="wp-image-26558" style="width:716px;height:auto" srcset="https://www.dmitrymakarov.ru/wp-content/uploads/2024/04/image_f-1024x655.png 1024w, https://www.dmitrymakarov.ru/wp-content/uploads/2024/04/image_f-300x192.png 300w, https://www.dmitrymakarov.ru/wp-content/uploads/2024/04/image_f-768x491.png 768w, https://www.dmitrymakarov.ru/wp-content/uploads/2024/04/image_f-600x384.png 600w, https://www.dmitrymakarov.ru/wp-content/uploads/2024/04/image_f.png 1030w" sizes="(max-width: 1024px) 100vw, 1024px" /></figure> <p>Здесь вначале посмотрим на функцию распределения $D(x)$ (оранжевый график). В промежутке от 150 до 210 см эта функция непрерывно возрастает, при этом она возрастает с разной скоростью. До точки x = 180 (она называется точкой перегиба, inflection point) скорость возрастания функции увеличивается, после нее убывает.</p> <p>Именно это изменение описывает производная от нее функция плотности $P(x)$ (синий график). На участке от 150 до 180 она возрастает, а потом в интервале от 180 до 210 постоянно убывает.</p> <p class="has-background" style="background-color:#ffe8c4">Таким образом, плотность вероятности описывает скорость изменения функции распределения.</p> <p>Дополнительно продемонстрирую взаимосвязь двух рассматриваемых функций через вычисление интеграла.</p> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51e7f012387537981" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f012387537981-1">1</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f012387537981-2">2</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f012387537981-3">3</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f012387537981-4">4</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f012387537981-5">5</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f012387537981-6">6</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f012387537981-7">7</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f012387537981-8">8</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f012387537981-9">9</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f012387537981-10">10</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f012387537981-11">11</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f012387537981-12">12</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f012387537981-13">13</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f012387537981-14">14</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f012387537981-15">15</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f012387537981-16">16</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f012387537981-17">17</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f012387537981-18">18</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f012387537981-19">19</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f012387537981-20">20</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f012387537981-21">21</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f012387537981-22">22</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f012387537981-1"><span class="crayon-c"># воспользуемся модулем integrate библиотеки scipy</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f012387537981-2"><span class="crayon-r">import</span><span class="crayon-h"> </span><span class="crayon-v">scipy</span><span class="crayon-sy">.</span><span class="crayon-e">integrate </span><span class="crayon-st">as</span><span class="crayon-h"> </span><span class="crayon-i">integrate</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f012387537981-3"><span class="crayon-h"> </span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f012387537981-4"><span class="crayon-c"># зададим среднее значение и СКО</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f012387537981-5"><span class="crayon-v">mu</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">sigma</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-cn">180</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-cn">10</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f012387537981-6"><span class="crayon-h"> </span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f012387537981-7"><span class="crayon-c"># и границы интервала от 190 до бесконечности</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f012387537981-8"><span class="crayon-v">lowerbound</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-cn">190</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f012387537981-9"><span class="crayon-v">upperbound</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-v">np</span><span class="crayon-sy">.</span><span class="crayon-i">inf</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f012387537981-10"><span class="crayon-h"> </span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f012387537981-11"><span class="crayon-c"># функция quad() в качестве первого аргумента ожидает функцию для интегрирования</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f012387537981-12"><span class="crayon-c"># напишем функцию gauss() с одним параметром</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f012387537981-13"><span class="crayon-r">def</span><span class="crayon-h"> </span><span class="crayon-e">gauss</span><span class="crayon-sy">(</span><span class="crayon-v">x</span><span class="crayon-sy">)</span><span class="crayon-o">:</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f012387537981-14"><span class="crayon-h"> </span><span class="crayon-st">return</span><span class="crayon-h"> </span><span class="crayon-v">norm</span><span class="crayon-sy">.</span><span class="crayon-e">pdf</span><span class="crayon-sy">(</span><span class="crayon-v">x</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">mu</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">sigma</span><span class="crayon-sy">)</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f012387537981-15"><span class="crayon-h"> </span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f012387537981-16"><span class="crayon-c"># передадим в функцию quad() функцию Гаусса, а также нижний и верхний пределы</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f012387537981-17"><span class="crayon-c"># поместим первое выводимое значение в переменную integral</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f012387537981-18"><span class="crayon-v">integral</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-v">integrate</span><span class="crayon-sy">.</span><span class="crayon-e">quad</span><span class="crayon-sy">(</span><span class="crayon-v">gauss</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">lowerbound</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">upperbound</span><span class="crayon-sy">)</span><span class="crayon-sy">[</span><span class="crayon-cn">0</span><span class="crayon-sy">]</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f012387537981-19"><span class="crayon-h"> </span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f012387537981-20"><span class="crayon-c"># так как мы получили вероятность от 190 см и выше (то есть площадь справа)</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f012387537981-21"><span class="crayon-c"># для нахождения вероятности не более 190 см результат нужно вычесть из единицы</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f012387537981-22"><span class="crayon-cn">1</span><span class="crayon-h"> </span><span class="crayon-o">-</span><span class="crayon-h"> </span><span class="crayon-v">integral</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0006 seconds] --> </div> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51e7f014427877375" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f014427877375-1">1</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f014427877375-1">0.8413447460685429</div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0000 seconds] --> </div> <p>Как вы видите, результат, найденный через интегрирование, ничем не отличается от результата, полученного через функцию распределения.</p> <h4 class="wp-block-heading" id="11-veroyatnost-konkretnogo-znacheniya">Вероятность конкретного значения</h4> <p>Важный и немного контринтуитивный момент. Вероятность того, что случайная величина <em>непрерывного</em> распределения примет конкретное значение (то есть нам встретится человек определенного роста) равна <strong>нулю</strong>. Это легко продемонстрировать.</p> <p>Ранее мы находили вероятность встретить человека ростом от 170 до 190 сантиметров, вычитая меньшую площадь под кривой из большей.</p> <p>$$ P(170 \leq x \leq 190) = P(x \leq 190)-P(x \leq 170) \approx 0{,}68 $$</p> <p>При этом если мы таким же способом постараемся найти вероятность встретить человека ростом ровно 190 сантиметров, то она очевидно будет равна нулю.</p> <p>$$ P(x = 190) = P(x \leq 190)-P(x \leq 190) = 0 $$</p> <h4 class="wp-block-heading" id="12-formirovanie-vyborki">Формирование выборки</h4> <p>Сделаем небольшое отступление и рассмотрим процесс <strong>формирования выборки</strong> (sampling). Все очень несложно. Мы берем некоторый набор элементов и из него случайным образом достаем какое-то их количество.</p> <div class="wp-block-image"> <figure class="aligncenter size-full is-resized"><img loading="lazy" decoding="async" width="875" height="852" src="https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/bag-with-balls.png" alt="формирование выборки" class="wp-image-11402" style="width:242px;height:236px" srcset="https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/bag-with-balls.png 875w, https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/bag-with-balls-300x292.png 300w, https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/bag-with-balls-768x748.png 768w, https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/bag-with-balls-600x584.png 600w" sizes="(max-width: 875px) 100vw, 875px" /></figure></div> <p>Пусть таким набором элементов будет мешок с разноцветными шарами.</p> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51e7f016830770701" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f016830770701-1">1</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f016830770701-2">2</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f016830770701-1"><span class="crayon-c"># посмотрим, что внутри этого мешка</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f016830770701-2"><span class="crayon-v">bag</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-sy">[</span><span class="crayon-s">'red'</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-s">'yellow'</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-s">'green'</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-s">'gray'</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-s">'black'</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-s">'orange'</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-s">'white'</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-s">'blue'</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-s">'brown'</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-s">'pink'</span><span class="crayon-sy">]</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0002 seconds] --> </div> <p>При этом формировать выборку можно двумя способами. В первом случае мы случайным образом достаем элемент, но, прежде чем взять следующий, кладем этот элемент обратно. Такой процесс называют <strong>выборкой с возвращением</strong> (sampling with replacement), и имитировать его можно с помощью <strong>функции np.random.choice()</strong>.</p> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51e7f02a935674105" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f02a935674105-1">1</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f02a935674105-2">2</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f02a935674105-3">3</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f02a935674105-4">4</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f02a935674105-1"><span class="crayon-v">np</span><span class="crayon-sy">.</span><span class="crayon-k ">random</span><span class="crayon-sy">.</span><span class="crayon-e">seed</span><span class="crayon-sy">(</span><span class="crayon-cn">42</span><span class="crayon-sy">)</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f02a935674105-2"><span class="crayon-h"> </span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f02a935674105-3"><span class="crayon-c"># выберем с возвращением восемь шаров</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f02a935674105-4"><span class="crayon-v">np</span><span class="crayon-sy">.</span><span class="crayon-k ">random</span><span class="crayon-sy">.</span><span class="crayon-e">choice</span><span class="crayon-sy">(</span><span class="crayon-v">bag</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-cn">8</span><span class="crayon-sy">)</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0002 seconds] --> </div> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51e7f02c104441623" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f02c104441623-1">1</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f02c104441623-2">2</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f02c104441623-1">array(['white', 'gray', 'blue', 'black', 'white', 'pink', 'green',</div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f02c104441623-2"> 'white'], dtype='<U6')</div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0000 seconds] --> </div> <p>Обратите внимание, белый шар повторяется дважды.</p> <p>Кроме того, можно сформировать <strong>выборку без возвращения</strong> (sampling without replacement). В этом случае мы не кладем элемент обратно, а откладываем в сторону и только потом достаем следующий элемент. Для этого функции <strong>np.random.choice()</strong> нужно задать параметр replace = False.</p> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51e7f02d286019618" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f02d286019618-1">1</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f02d286019618-2">2</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f02d286019618-3">3</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f02d286019618-4">4</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f02d286019618-1"><span class="crayon-v">np</span><span class="crayon-sy">.</span><span class="crayon-k ">random</span><span class="crayon-sy">.</span><span class="crayon-e">seed</span><span class="crayon-sy">(</span><span class="crayon-cn">42</span><span class="crayon-sy">)</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f02d286019618-2"><span class="crayon-h"> </span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f02d286019618-3"><span class="crayon-c"># сделаем то же самое, только возвращать шары не будем</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f02d286019618-4"><span class="crayon-v">np</span><span class="crayon-sy">.</span><span class="crayon-k ">random</span><span class="crayon-sy">.</span><span class="crayon-e">choice</span><span class="crayon-sy">(</span><span class="crayon-v">bag</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-cn">8</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">replace</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-t">False</span><span class="crayon-sy">)</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0002 seconds] --> </div> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51e7f02e719834505" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f02e719834505-1">1</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f02e719834505-2">2</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f02e719834505-1">array(['brown', 'yellow', 'orange', 'red', 'blue', 'green', 'pink',</div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f02e719834505-2"> 'black'], dtype='<U6')</div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0000 seconds] --> </div> <p>Теперь при том же seed ни один элемент не повторяется. Дополнительно замечу, что эта функция работает также и с числами.</p> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51e7f030953464657" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f030953464657-1">1</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f030953464657-2">2</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f030953464657-3">3</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f030953464657-4">4</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f030953464657-5">5</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f030953464657-1"><span class="crayon-v">np</span><span class="crayon-sy">.</span><span class="crayon-k ">random</span><span class="crayon-sy">.</span><span class="crayon-e">seed</span><span class="crayon-sy">(</span><span class="crayon-cn">42</span><span class="crayon-sy">)</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f030953464657-2"><span class="crayon-h"> </span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f030953464657-3"><span class="crayon-c"># выберем 5 чисел из массива от 0 до 9</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f030953464657-4"><span class="crayon-c"># "под капотом" массив из 10 чисел формируется с помощью np.arange(10)</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f030953464657-5"><span class="crayon-v">np</span><span class="crayon-sy">.</span><span class="crayon-k ">random</span><span class="crayon-sy">.</span><span class="crayon-e">choice</span><span class="crayon-sy">(</span><span class="crayon-cn">10</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-cn">5</span><span class="crayon-sy">)</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0002 seconds] --> </div> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51e7f031636678790" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f031636678790-1">1</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f031636678790-1">array([6, 3, 7, 4, 6])</div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0000 seconds] --> </div> <h4 class="wp-block-heading" id="13-tsentralnaya-predelnaya-teorema">Центральная предельная теорема</h4> <p>Помимо процессов в организме и природных явлений, нормальное распределение имеет большое значение для <a href="https://www.dmitrymakarov.ru/intro/inference-09/#1-tsentralnaya-predelnaya-teorema">Центральной предельной теоремы</a> (Central Limit Theorem).</p> <h5 class="wp-block-heading" id="14-opredeleniya-i-notatsiya">Определения и нотация</h5> <p>Вначале вспомним несколько терминов и введем полезные обозначения.</p> <p>Во-первых, напомню, что данные могут представлять собой генеральную совокупность (population) или выборку из нее (sample). Если мы берем несколько выборок из одной генеральной совокупности и измеряем для каждой из них определенный параметр (например, среднее арифметическое, sample mean), то совокупность этих средних формирует выборочное распределение (sampling distribution).</p> <p>При изучении Центральной предельной теоремы нас будет интересовать поведение именно этого распределения, его среднее арифметическое и среднее квадратическое отклонение.</p> <figure class="wp-block-image size-large is-resized"><img loading="lazy" decoding="async" width="1024" height="587" src="https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/clt-1024x587.png" alt="центральная предельная теорема" class="wp-image-11454" style="width:694px;height:397px" srcset="https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/clt-1024x587.png 1024w, https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/clt-300x172.png 300w, https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/clt-768x440.png 768w, https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/clt-600x344.png 600w, https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/clt.png 1115w" sizes="(max-width: 1024px) 100vw, 1024px" /></figure> <p>Теперь перейдем к сути.</p> <h5 class="wp-block-heading" id="15-tspt-i-normalnoe-raspredelenie">ЦПТ и нормальное распределение</h5> <p>Мы уже знаем, что среднее средних нескольких выборок (mean of sampling distribution of sample means) из одной генеральной совокупности будет стремиться к истинному среднему этой генеральной совокупности.</p> <p>$$ \mu_\bar{x} = \mu $$</p> <p class="has-background" style="background-color:#ffe8c4">Однако это не все. При соблюдении двух условий, а именно, (1) выборки сформированы случайным образом, (2) размер каждой выборки составляет не менее 30 элементов, <em>выборочные средние будут следовать нормальному распределению.</em></p> <p>Более того, распределение самой генеральной совокупности при этом <em>не обязательно</em> должно быть нормальным.</p> <p>Одновременно, среднее квадратическое отклонение распределения средних будет стремиться к СКО генсовокупности, разделенному на квадратный корень размера одной выборки.</p> <p>$$ \sigma_\bar{x} = \frac{\sigma}{\sqrt{n}} $$</p> <p>Математически эти выводы можно записать так</p> <p>$$ X \sim dist(\mu, \sigma) \rightarrow \bar{X} \sim {\mathcal N}(\mu, \frac{\sigma}{\sqrt{n}}) $$</p> <h5 class="wp-block-heading" id="16-proverim-na-pitone">Проверим на Питоне</h5> <p>А теперь давайте проверим истинность ЦПТ с помощью Питона. Для начала создадим скошенное вправо распределение (right skewed distribution). Такое распределение может характеризовать, например, зарплаты людей.</p> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51e7f032514048396" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f032514048396-1">1</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f032514048396-2">2</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f032514048396-3">3</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f032514048396-4">4</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f032514048396-5">5</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f032514048396-6">6</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f032514048396-7">7</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f032514048396-8">8</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f032514048396-9">9</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f032514048396-10">10</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f032514048396-1"><span class="crayon-c"># скошенное распределение мы будем строить </span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f032514048396-2"><span class="crayon-c"># с помощью объекта skewnorm модуля stats библиотеки scipy</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f032514048396-3"><span class="crayon-st">from</span><span class="crayon-h"> </span><span class="crayon-v">scipy</span><span class="crayon-sy">.</span><span class="crayon-e">stats </span><span class="crayon-r">import</span><span class="crayon-h"> </span><span class="crayon-i">skewnorm</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f032514048396-4"><span class="crayon-h"> </span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f032514048396-5"><span class="crayon-c"># сгенерируем массив с данными о зарплате, задав искуссвенные параметры</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f032514048396-6"><span class="crayon-v">salaries</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-v">skewnorm</span><span class="crayon-sy">.</span><span class="crayon-e">rvs</span><span class="crayon-sy">(</span><span class="crayon-v">a</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-cn">20</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-c"># скошенность (skewness)</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f032514048396-7"><span class="crayon-h"> </span><span class="crayon-v">loc</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-cn">20</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-c"># среднее значение без учета скошенности</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f032514048396-8"><span class="crayon-h"> </span><span class="crayon-v">scale</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-cn">80</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-c"># отклонение от среднего</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f032514048396-9"><span class="crayon-h"> </span><span class="crayon-v">size</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-cn">100000</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-c"># размер генерируемого массива</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f032514048396-10"><span class="crayon-h"> </span><span class="crayon-v">random_state</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-cn">42</span><span class="crayon-sy">)</span><span class="crayon-h"> </span><span class="crayon-c"># воспроизводимость результата</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0005 seconds] --> </div> <p>Посмотрим на график этого распределения.</p> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51e7f047265170797" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f047265170797-1">1</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f047265170797-2">2</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f047265170797-3">3</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f047265170797-4">4</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f047265170797-5">5</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f047265170797-6">6</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f047265170797-7">7</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f047265170797-8">8</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f047265170797-9">9</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f047265170797-10">10</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f047265170797-11">11</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f047265170797-12">12</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f047265170797-1"><span class="crayon-c"># зададим размер графика</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f047265170797-2"><span class="crayon-v">plt</span><span class="crayon-sy">.</span><span class="crayon-e">figure</span><span class="crayon-sy">(</span><span class="crayon-v">figsize</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-sy">(</span><span class="crayon-cn">10</span><span class="crayon-sy">,</span><span class="crayon-cn">6</span><span class="crayon-sy">)</span><span class="crayon-sy">)</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f047265170797-3"><span class="crayon-h"> </span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f047265170797-4"><span class="crayon-c"># и построим график функции плотности</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f047265170797-5"><span class="crayon-v">sns</span><span class="crayon-sy">.</span><span class="crayon-e">kdeplot</span><span class="crayon-sy">(</span><span class="crayon-v">salaries</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">fill</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-t">True</span><span class="crayon-sy">)</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f047265170797-6"><span class="crayon-h"> </span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f047265170797-7"><span class="crayon-c"># добавим подписи</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f047265170797-8"><span class="crayon-v">plt</span><span class="crayon-sy">.</span><span class="crayon-e">xlabel</span><span class="crayon-sy">(</span><span class="crayon-s">'Зарплата, тыс. рублей'</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">fontsize</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-cn">15</span><span class="crayon-sy">)</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f047265170797-9"><span class="crayon-v">plt</span><span class="crayon-sy">.</span><span class="crayon-e">ylabel</span><span class="crayon-sy">(</span><span class="crayon-s">'Плотность распределения'</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">fontsize</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-cn">15</span><span class="crayon-sy">)</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f047265170797-10"><span class="crayon-v">plt</span><span class="crayon-sy">.</span><span class="crayon-e">title</span><span class="crayon-sy">(</span><span class="crayon-s">'Распределение заработной платы'</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">fontsize</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-cn">17</span><span class="crayon-sy">)</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f047265170797-11"><span class="crayon-h"> </span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f047265170797-12"><span class="crayon-v">plt</span><span class="crayon-sy">.</span><span class="crayon-e">show</span><span class="crayon-sy">(</span><span class="crayon-sy">)</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0005 seconds] --> </div> <figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="626" height="397" src="https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/salaries.png" alt="распределение заработной платы" class="wp-image-11451" srcset="https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/salaries.png 626w, https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/salaries-300x190.png 300w, https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/salaries-600x381.png 600w" sizes="(max-width: 626px) 100vw, 626px" /></figure> <p>Большая часть зарплат находится в нижней границе диапазона, при этом справа есть большой хвост тех немногих, чья заработная плата существенно выше среднего. Рассчитаем среднее значение и медиану.</p> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51e7f048704428114" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f048704428114-1">1</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f048704428114-1"><span class="crayon-v">np</span><span class="crayon-sy">.</span><span class="crayon-e">mean</span><span class="crayon-sy">(</span><span class="crayon-v">salaries</span><span class="crayon-sy">)</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0001 seconds] --> </div> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51e7f049024164438" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f049024164438-1">1</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f049024164438-1">83.84511076271755</div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0000 seconds] --> </div> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51e7f04a973953955" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f04a973953955-1">1</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f04a973953955-1"><span class="crayon-v">np</span><span class="crayon-sy">.</span><span class="crayon-e">median</span><span class="crayon-sy">(</span><span class="crayon-v">salaries</span><span class="crayon-sy">)</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0001 seconds] --> </div> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51e7f04b544091960" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f04b544091960-1">1</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f04b544091960-1">74.07573752156253</div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0000 seconds] --> </div> <p>Как и должно быть, медианное значение меньше среднего арифметического, на которое влияют небольшое количество очень высоких зарплат. По этой причине, <a href="https://www.dmitrymakarov.ru/intro/stats-08/#9-zachem-stolko-srednikh">как мы уже говорили</a>, для измерения средней зарплаты предпочтительнее использовать именно медиану.</p> <p>Рассчитаем СКО.</p> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51e7f04c156369152" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f04c156369152-1">1</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f04c156369152-1"><span class="crayon-v">np</span><span class="crayon-sy">.</span><span class="crayon-e">std</span><span class="crayon-sy">(</span><span class="crayon-v">salaries</span><span class="crayon-sy">)</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0001 seconds] --> </div> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51e7f04d184457717" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f04d184457717-1">1</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f04d184457717-1">48.366511941114176</div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0000 seconds] --> </div> <p><strong>Выборки с возвращением</strong>. Теперь давайте брать выборки из нашей скошенной генеральной совокупности salaries и смотреть, что произойдет с распределением выборочных средних. Вначале создадим необходимое количество выборок.</p> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51e7f04e756129769" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f04e756129769-1">1</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f04e756129769-2">2</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f04e756129769-3">3</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f04e756129769-4">4</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f04e756129769-5">5</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f04e756129769-6">6</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f04e756129769-7">7</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f04e756129769-8">8</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f04e756129769-9">9</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f04e756129769-10">10</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f04e756129769-11">11</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f04e756129769-12">12</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f04e756129769-13">13</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f04e756129769-14">14</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f04e756129769-15">15</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f04e756129769-16">16</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f04e756129769-17">17</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f04e756129769-18">18</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f04e756129769-19">19</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f04e756129769-20">20</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f04e756129769-21">21</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f04e756129769-1"><span class="crayon-c"># зададим точку отсчета</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f04e756129769-2"><span class="crayon-v">np</span><span class="crayon-sy">.</span><span class="crayon-k ">random</span><span class="crayon-sy">.</span><span class="crayon-e">seed</span><span class="crayon-sy">(</span><span class="crayon-cn">42</span><span class="crayon-sy">)</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f04e756129769-3"><span class="crayon-h"> </span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f04e756129769-4"><span class="crayon-c"># создадим список, в который будем записывать выборочные средние</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f04e756129769-5"><span class="crayon-v">sample_means</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-sy">[</span><span class="crayon-sy">]</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f04e756129769-6"><span class="crayon-h"> </span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f04e756129769-7"><span class="crayon-c"># зададим количество и размер выборок</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f04e756129769-8"><span class="crayon-v">n_samples</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-cn">1000</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f04e756129769-9"><span class="crayon-v">sample_size</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-cn">30</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f04e756129769-10"><span class="crayon-h"> </span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f04e756129769-11"><span class="crayon-c"># в цикле будем формировать выборки</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f04e756129769-12"><span class="crayon-st">for</span><span class="crayon-h"> </span><span class="crayon-i">i</span><span class="crayon-h"> </span><span class="crayon-st">in</span><span class="crayon-h"> </span><span class="crayon-k ">range</span><span class="crayon-sy">(</span><span class="crayon-v">n_samples</span><span class="crayon-sy">)</span><span class="crayon-o">:</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f04e756129769-13"><span class="crayon-h"> </span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f04e756129769-14"><span class="crayon-h"> </span><span class="crayon-c"># путем отбора нужного количества элементов из генеральной совокупности</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f04e756129769-15"><span class="crayon-h"> </span><span class="crayon-v">sample</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-v">np</span><span class="crayon-sy">.</span><span class="crayon-k ">random</span><span class="crayon-sy">.</span><span class="crayon-e">choice</span><span class="crayon-sy">(</span><span class="crayon-v">salaries</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">sample_size</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">replace</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-t">False</span><span class="crayon-sy">)</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f04e756129769-16"><span class="crayon-h"> </span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f04e756129769-17"><span class="crayon-h"> </span><span class="crayon-c"># для каждой выборки рассчитаем среднее значение и поместим в список выборочных средних</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f04e756129769-18"><span class="crayon-h"> </span><span class="crayon-v">sample_means</span><span class="crayon-sy">.</span><span class="crayon-e">append</span><span class="crayon-sy">(</span><span class="crayon-v">np</span><span class="crayon-sy">.</span><span class="crayon-e">mean</span><span class="crayon-sy">(</span><span class="crayon-v">sample</span><span class="crayon-sy">)</span><span class="crayon-sy">)</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f04e756129769-19"><span class="crayon-h"> </span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f04e756129769-20"><span class="crayon-c"># убедимся, что сформировали нужно количество выборок</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f04e756129769-21"><span class="crayon-k ">len</span><span class="crayon-sy">(</span><span class="crayon-v">sample_means</span><span class="crayon-sy">)</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0005 seconds] --> </div> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51e7f04f229288149" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f04f229288149-1">1</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f04f229288149-1">1000</div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0000 seconds] --> </div> <p>Посмотрим на результат.</p> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51e7f051168359167" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f051168359167-1">1</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f051168359167-2">2</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f051168359167-3">3</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f051168359167-4">4</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f051168359167-5">5</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f051168359167-6">6</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f051168359167-7">7</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f051168359167-8">8</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f051168359167-9">9</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f051168359167-10">10</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f051168359167-11">11</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f051168359167-12">12</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f051168359167-1"><span class="crayon-c"># зададим размер графика</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f051168359167-2"><span class="crayon-v">plt</span><span class="crayon-sy">.</span><span class="crayon-e">figure</span><span class="crayon-sy">(</span><span class="crayon-v">figsize</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-sy">(</span><span class="crayon-cn">10</span><span class="crayon-sy">,</span><span class="crayon-cn">6</span><span class="crayon-sy">)</span><span class="crayon-sy">)</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f051168359167-3"><span class="crayon-h"> </span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f051168359167-4"><span class="crayon-c"># и построим график функции плотности </span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f051168359167-5"><span class="crayon-v">sns</span><span class="crayon-sy">.</span><span class="crayon-e">kdeplot</span><span class="crayon-sy">(</span><span class="crayon-v">sample_means</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">fill</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-t">True</span><span class="crayon-sy">)</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f051168359167-6"><span class="crayon-h"> </span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f051168359167-7"><span class="crayon-c"># добавим подписи</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f051168359167-8"><span class="crayon-v">plt</span><span class="crayon-sy">.</span><span class="crayon-e">xlabel</span><span class="crayon-sy">(</span><span class="crayon-s">'Средние значения выборок'</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">fontsize</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-cn">15</span><span class="crayon-sy">)</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f051168359167-9"><span class="crayon-v">plt</span><span class="crayon-sy">.</span><span class="crayon-e">ylabel</span><span class="crayon-sy">(</span><span class="crayon-s">'Плотность распределения'</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">fontsize</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-cn">15</span><span class="crayon-sy">)</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f051168359167-10"><span class="crayon-v">plt</span><span class="crayon-sy">.</span><span class="crayon-e">title</span><span class="crayon-sy">(</span><span class="crayon-s">'Распределение выборочных средних'</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">fontsize</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-cn">17</span><span class="crayon-sy">)</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f051168359167-11"><span class="crayon-h"> </span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f051168359167-12"><span class="crayon-v">plt</span><span class="crayon-sy">.</span><span class="crayon-e">show</span><span class="crayon-sy">(</span><span class="crayon-sy">)</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0005 seconds] --> </div> <figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="620" height="397" src="https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/sampling-distribution.png" alt="распределение выборочных средних" class="wp-image-11458" srcset="https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/sampling-distribution.png 620w, https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/sampling-distribution-300x192.png 300w, https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/sampling-distribution-600x384.png 600w" sizes="(max-width: 620px) 100vw, 620px" /></figure> <p>Обратите внимание, распределение выборочных средних гораздо ближе к нормальному распределению, нежели исходное распределение salaries. Остается рассчитать значения, к которым, согласно ЦПТ, должны стремиться среднее значение и СКО выборочных средних.</p> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51e7f052409009424" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f052409009424-1">1</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f052409009424-1"><span class="crayon-v">np</span><span class="crayon-sy">.</span><span class="crayon-e">mean</span><span class="crayon-sy">(</span><span class="crayon-v">salaries</span><span class="crayon-sy">)</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">np</span><span class="crayon-sy">.</span><span class="crayon-e">std</span><span class="crayon-sy">(</span><span class="crayon-v">salaries</span><span class="crayon-sy">)</span><span class="crayon-o">/</span><span class="crayon-v">np</span><span class="crayon-sy">.</span><span class="crayon-e">sqrt</span><span class="crayon-sy">(</span><span class="crayon-v">sample_size</span><span class="crayon-sy">)</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0002 seconds] --> </div> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51e7f053152104309" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f053152104309-1">1</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f053152104309-1">(83.84511076271755, 8.830476539330403)</div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0000 seconds] --> </div> <p>Посмотрим так ли это.</p> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51e7f054555701293" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f054555701293-1">1</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f054555701293-1"><span class="crayon-v">np</span><span class="crayon-sy">.</span><span class="crayon-e">mean</span><span class="crayon-sy">(</span><span class="crayon-v">sample_means</span><span class="crayon-sy">)</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">np</span><span class="crayon-sy">.</span><span class="crayon-e">std</span><span class="crayon-sy">(</span><span class="crayon-v">sample_means</span><span class="crayon-sy">)</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0002 seconds] --> </div> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51e7f055364304933" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f055364304933-1">1</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f055364304933-1">(83.93586714203595, 8.94762726282006)</div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0000 seconds] --> </div> <p>Как мы видим, ЦПТ подтверждается.</p> <p><strong>Выборки без возвращения</strong>. Теперь в качестве упражнения, давайте понаблюдаем, как будет меняться распределение выборочных средних при различных значениях количества выборок и их размера.</p> <p>Кроме того, на этот раз будем делать выборку без возвращения, потому что если вы обратите внимание, несмотря на указанный параметр replace = False, на каждой итерации приведенного выше алгоритма мы формировали выборку из одной и той же генеральной совокупности, а значит элементы могли повторяться.</p> <p class="has-background" style="background-color:#ffe8c4">Важно, что при формировании выборки без возвращения ЦПТ будет выполняться, если размер одной выборки состаляет не более 5% от размера генеральной совокупности.</p> <p>Для формирования распределения выборок без возвращения напишем собственную функцию sample_means(). На входе она будет принимать следующие параметры:</p> <ul class="wp-block-list"> <li>data — набор данных (генеральная совокупность);</li> <li>n_samples — количество выборок;</li> <li>sample_size — размер одной выборки;</li> <li>replace = True — с возвращением делать выборки или без;</li> <li>random_state = None — воспроизводимость результата.</li> </ul> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51e7f056196462242" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f056196462242-1">1</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f056196462242-2">2</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f056196462242-3">3</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f056196462242-4">4</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f056196462242-5">5</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f056196462242-6">6</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f056196462242-7">7</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f056196462242-8">8</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f056196462242-9">9</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f056196462242-10">10</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f056196462242-11">11</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f056196462242-12">12</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f056196462242-13">13</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f056196462242-14">14</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f056196462242-15">15</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f056196462242-16">16</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f056196462242-17">17</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f056196462242-18">18</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f056196462242-19">19</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f056196462242-20">20</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f056196462242-21">21</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f056196462242-22">22</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f056196462242-23">23</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f056196462242-24">24</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f056196462242-25">25</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f056196462242-26">26</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f056196462242-1"><span class="crayon-c"># объявим собственную функцию для формирования распределения выборочных средних</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f056196462242-2"><span class="crayon-r">def</span><span class="crayon-h"> </span><span class="crayon-e">sample_means</span><span class="crayon-sy">(</span><span class="crayon-v">data</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">n_samples</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">sample_size</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">replace</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-t">True</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">random_state</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-t">None</span><span class="crayon-sy">)</span><span class="crayon-o">:</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f056196462242-3"><span class="crayon-h"> </span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f056196462242-4"><span class="crayon-h"> </span><span class="crayon-c"># создадим список, в который будем записывать выборочные средние</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f056196462242-5"><span class="crayon-h"> </span><span class="crayon-v">sample_means</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-sy">[</span><span class="crayon-sy">]</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f056196462242-6"><span class="crayon-h"> </span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f056196462242-7"><span class="crayon-h"> </span><span class="crayon-c"># пропишем воспроизводимость</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f056196462242-8"><span class="crayon-h"> </span><span class="crayon-v">np</span><span class="crayon-sy">.</span><span class="crayon-k ">random</span><span class="crayon-sy">.</span><span class="crayon-e">seed</span><span class="crayon-sy">(</span><span class="crayon-v">random_state</span><span class="crayon-sy">)</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f056196462242-9"><span class="crayon-h"> </span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f056196462242-10"><span class="crayon-h"> </span><span class="crayon-c"># в цикле будем формировать выборки</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f056196462242-11"><span class="crayon-h"> </span><span class="crayon-st">for</span><span class="crayon-h"> </span><span class="crayon-i">i</span><span class="crayon-h"> </span><span class="crayon-st">in</span><span class="crayon-h"> </span><span class="crayon-k ">range</span><span class="crayon-sy">(</span><span class="crayon-v">n_samples</span><span class="crayon-sy">)</span><span class="crayon-o">:</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f056196462242-12"><span class="crayon-h"> </span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f056196462242-13"><span class="crayon-h"> </span><span class="crayon-c"># путем отбора нужного количества элементов из генеральной совокупности</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f056196462242-14"><span class="crayon-h"> </span><span class="crayon-v">sample</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-v">np</span><span class="crayon-sy">.</span><span class="crayon-k ">random</span><span class="crayon-sy">.</span><span class="crayon-e">choice</span><span class="crayon-sy">(</span><span class="crayon-v">data</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">sample_size</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">replace</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-t">False</span><span class="crayon-sy">)</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f056196462242-15"><span class="crayon-h"> </span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f056196462242-16"><span class="crayon-h"> </span><span class="crayon-c"># для каждой выборки рассчитаем среднее значение и поместим в список выборочных средних</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f056196462242-17"><span class="crayon-h"> </span><span class="crayon-v">sample_means</span><span class="crayon-sy">.</span><span class="crayon-e">append</span><span class="crayon-sy">(</span><span class="crayon-v">np</span><span class="crayon-sy">.</span><span class="crayon-e">mean</span><span class="crayon-sy">(</span><span class="crayon-v">sample</span><span class="crayon-sy">)</span><span class="crayon-sy">)</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f056196462242-18"><span class="crayon-h"> </span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f056196462242-19"><span class="crayon-h"> </span><span class="crayon-c"># если указано, что выборки делаются без возвращения</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f056196462242-20"><span class="crayon-h"> </span><span class="crayon-st">if</span><span class="crayon-h"> </span><span class="crayon-v">replace</span><span class="crayon-h"> </span><span class="crayon-o">==</span><span class="crayon-h"> </span><span class="crayon-t">False</span><span class="crayon-o">:</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f056196462242-21"><span class="crayon-h"> </span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f056196462242-22"><span class="crayon-h"> </span><span class="crayon-c"># удалим эту выборку из данных о зарплате</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f056196462242-23"><span class="crayon-h"> </span><span class="crayon-v">data</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-v">np</span><span class="crayon-sy">.</span><span class="crayon-k ">array</span><span class="crayon-sy">(</span><span class="crayon-k ">list</span><span class="crayon-sy">(</span><span class="crayon-k ">set</span><span class="crayon-sy">(</span><span class="crayon-v">data</span><span class="crayon-sy">)</span><span class="crayon-h"> </span><span class="crayon-o">-</span><span class="crayon-h"> </span><span class="crayon-k ">set</span><span class="crayon-sy">(</span><span class="crayon-v">sample</span><span class="crayon-sy">)</span><span class="crayon-sy">)</span><span class="crayon-sy">)</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f056196462242-24"><span class="crayon-h"> </span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f056196462242-25"><span class="crayon-h"> </span><span class="crayon-c"># вернем список с выборочными средними</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f056196462242-26"><span class="crayon-h"> </span><span class="crayon-st">return</span><span class="crayon-h"> </span><span class="crayon-v">sample_means</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0008 seconds] --> </div> <p>Протестируем эту функцию.</p> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51e7f058389112589" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f058389112589-1">1</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f058389112589-2">2</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f058389112589-1"><span class="crayon-c"># сформируем 100 выборок без возвращения по 30 элементов в каждой</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f058389112589-2"><span class="crayon-v">res</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-e">sample_means</span><span class="crayon-sy">(</span><span class="crayon-v">salaries</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-cn">100</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-cn">30</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">replace</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-t">False</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">random_state</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-cn">42</span><span class="crayon-sy">)</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0002 seconds] --> </div> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51e7f05a832378599" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f05a832378599-1">1</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f05a832378599-2">2</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f05a832378599-3">3</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f05a832378599-4">4</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f05a832378599-5">5</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f05a832378599-6">6</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f05a832378599-7">7</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f05a832378599-8">8</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f05a832378599-9">9</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f05a832378599-10">10</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f05a832378599-11">11</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f05a832378599-12">12</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f05a832378599-1"><span class="crayon-c"># зададим размер графика</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f05a832378599-2"><span class="crayon-v">plt</span><span class="crayon-sy">.</span><span class="crayon-e">figure</span><span class="crayon-sy">(</span><span class="crayon-v">figsize</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-sy">(</span><span class="crayon-cn">10</span><span class="crayon-sy">,</span><span class="crayon-cn">6</span><span class="crayon-sy">)</span><span class="crayon-sy">)</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f05a832378599-3"><span class="crayon-h"> </span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f05a832378599-4"><span class="crayon-c"># и построим график функции плотности </span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f05a832378599-5"><span class="crayon-v">sns</span><span class="crayon-sy">.</span><span class="crayon-e">kdeplot</span><span class="crayon-sy">(</span><span class="crayon-v">res</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">fill</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-t">True</span><span class="crayon-sy">)</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f05a832378599-6"><span class="crayon-h"> </span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f05a832378599-7"><span class="crayon-c"># добавим подписи</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f05a832378599-8"><span class="crayon-v">plt</span><span class="crayon-sy">.</span><span class="crayon-e">xlabel</span><span class="crayon-sy">(</span><span class="crayon-s">'Средние значения выборок'</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">fontsize</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-cn">15</span><span class="crayon-sy">)</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f05a832378599-9"><span class="crayon-v">plt</span><span class="crayon-sy">.</span><span class="crayon-e">ylabel</span><span class="crayon-sy">(</span><span class="crayon-s">'Плотность распределения'</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">fontsize</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-cn">15</span><span class="crayon-sy">)</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f05a832378599-10"><span class="crayon-v">plt</span><span class="crayon-sy">.</span><span class="crayon-e">title</span><span class="crayon-sy">(</span><span class="crayon-s">'Распределение выборочных средних'</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">fontsize</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-cn">17</span><span class="crayon-sy">)</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f05a832378599-11"><span class="crayon-h"> </span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f05a832378599-12"><span class="crayon-v">plt</span><span class="crayon-sy">.</span><span class="crayon-e">show</span><span class="crayon-sy">(</span><span class="crayon-sy">)</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0006 seconds] --> </div> <figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="622" height="397" src="https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/sampling_dist_wo_replacement.png" alt="распределение выборочных средних (выборка без возвращения)" class="wp-image-11476" srcset="https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/sampling_dist_wo_replacement.png 622w, https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/sampling_dist_wo_replacement-300x191.png 300w, https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/sampling_dist_wo_replacement-600x383.png 600w" sizes="(max-width: 622px) 100vw, 622px" /></figure> <p>Теперь сгенерируем несколько распределений выборочных средних с 20, 100 и 500 выборками в распределении и размером выборки в 2, 10 и 30 значений.</p> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51e7f05b482485152" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f05b482485152-1">1</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f05b482485152-2">2</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f05b482485152-3">3</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f05b482485152-4">4</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f05b482485152-5">5</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f05b482485152-6">6</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f05b482485152-7">7</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f05b482485152-8">8</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f05b482485152-9">9</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f05b482485152-10">10</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f05b482485152-11">11</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f05b482485152-12">12</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f05b482485152-13">13</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f05b482485152-14">14</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f05b482485152-15">15</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f05b482485152-16">16</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f05b482485152-17">17</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f05b482485152-18">18</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f05b482485152-19">19</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f05b482485152-20">20</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f05b482485152-21">21</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f05b482485152-22">22</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f05b482485152-23">23</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f05b482485152-24">24</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f05b482485152-25">25</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f05b482485152-26">26</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f05b482485152-27">27</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f05b482485152-28">28</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f05b482485152-29">29</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f05b482485152-30">30</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f05b482485152-31">31</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f05b482485152-32">32</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f05b482485152-33">33</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f05b482485152-34">34</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f05b482485152-35">35</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f05b482485152-36">36</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f05b482485152-37">37</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f05b482485152-38">38</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f05b482485152-39">39</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f05b482485152-40">40</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f05b482485152-41">41</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f05b482485152-42">42</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size: … [Строка слишком длинная. Вы можете скачать файл] </tr> </table> </div> </div> <!-- [Format Time: 0.0018 seconds] --> </div> <figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="948" height="698" src="https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/multiple-sampling-distributions.png" alt="распределения выборочных средних с 20, 100 и 500 выборками и размером выборки в 2, 10 и 30 значений" class="wp-image-11486" srcset="https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/multiple-sampling-distributions.png 948w, https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/multiple-sampling-distributions-300x221.png 300w, https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/multiple-sampling-distributions-768x565.png 768w, https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/multiple-sampling-distributions-600x442.png 600w" sizes="(max-width: 948px) 100vw, 948px" /></figure> <p>Кроме того, давайте посмотрим на параметры этих распределений в табличной форме и сравним с «целевыми» показателями, основанными на ЦПТ.</p> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51e7f05d177980472" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f05d177980472-1">1</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f05d177980472-2">2</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f05d177980472-3">3</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f05d177980472-4">4</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f05d177980472-5">5</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f05d177980472-6">6</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f05d177980472-7">7</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f05d177980472-8">8</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f05d177980472-9">9</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f05d177980472-10">10</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f05d177980472-11">11</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f05d177980472-12">12</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f05d177980472-13">13</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f05d177980472-14">14</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f05d177980472-15">15</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f05d177980472-16">16</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f05d177980472-17">17</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f05d177980472-18">18</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f05d177980472-19">19</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f05d177980472-20">20</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f05d177980472-21">21</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f05d177980472-1"><span class="crayon-c"># вновь создадим генеральную совокупность</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f05d177980472-2"><span class="crayon-v">salaries</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-v">skewnorm</span><span class="crayon-sy">.</span><span class="crayon-e">rvs</span><span class="crayon-sy">(</span><span class="crayon-v">a</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-cn">20</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">loc</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-cn">20</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">scale</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-cn">80</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">size</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-cn">100000</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">random_state</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-cn">42</span><span class="crayon-sy">)</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f05d177980472-3"><span class="crayon-h"> </span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f05d177980472-4"><span class="crayon-c"># в словарь sampling_distributions поместим</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f05d177980472-5"><span class="crayon-v">sampling_distributions</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-sy">{</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f05d177980472-6"><span class="crayon-h"> </span><span class="crayon-c"># количество выборок в каждом из девяти распределений</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f05d177980472-7"><span class="crayon-h"> </span><span class="crayon-s">'Number_of_samples'</span><span class="crayon-h"> </span><span class="crayon-o">:</span><span class="crayon-h"> </span><span class="crayon-v">np</span><span class="crayon-sy">.</span><span class="crayon-e">repeat</span><span class="crayon-sy">(</span><span class="crayon-v">number_of_samples_list</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-cn">3</span><span class="crayon-sy">)</span><span class="crayon-sy">,</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f05d177980472-8"><span class="crayon-h"> </span><span class="crayon-c"># размер каждой выборки</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f05d177980472-9"><span class="crayon-h"> </span><span class="crayon-s">'Sample_size'</span><span class="crayon-h"> </span><span class="crayon-o">:</span><span class="crayon-h"> </span><span class="crayon-v">sample_size_list</span><span class="crayon-h"> </span><span class="crayon-o">*</span><span class="crayon-h"> </span><span class="crayon-cn">3</span><span class="crayon-sy">,</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f05d177980472-10"><span class="crayon-h"> </span><span class="crayon-c"># среднее значение генеральной совокупности</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f05d177980472-11"><span class="crayon-h"> </span><span class="crayon-s">'Pop_mean'</span><span class="crayon-h"> </span><span class="crayon-o">:</span><span class="crayon-h"> </span><span class="crayon-sy">[</span><span class="crayon-v">np</span><span class="crayon-sy">.</span><span class="crayon-e">mean</span><span class="crayon-sy">(</span><span class="crayon-v">salaries</span><span class="crayon-sy">)</span><span class="crayon-sy">]</span><span class="crayon-h"> </span><span class="crayon-o">*</span><span class="crayon-h"> </span><span class="crayon-cn">9</span><span class="crayon-sy">,</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f05d177980472-12"><span class="crayon-h"> </span><span class="crayon-c"># фактическое среднее значение каждого распределения</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f05d177980472-13"><span class="crayon-h"> </span><span class="crayon-s">'Actual_mean'</span><span class="crayon-h"> </span><span class="crayon-o">:</span><span class="crayon-h"> </span><span class="crayon-v">mean_list</span><span class="crayon-sy">,</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f05d177980472-14"><span class="crayon-h"> </span><span class="crayon-c"># расчетное СКО (в соответствии с ЦПТ)</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f05d177980472-15"><span class="crayon-h"> </span><span class="crayon-s">'Expected_std'</span><span class="crayon-h"> </span><span class="crayon-o">:</span><span class="crayon-h"> </span><span class="crayon-sy">[</span><span class="crayon-v">np</span><span class="crayon-sy">.</span><span class="crayon-e">std</span><span class="crayon-sy">(</span><span class="crayon-v">salaries</span><span class="crayon-sy">)</span><span class="crayon-h"> </span><span class="crayon-o">/</span><span class="crayon-h"> </span><span class="crayon-v">np</span><span class="crayon-sy">.</span><span class="crayon-e">sqrt</span><span class="crayon-sy">(</span><span class="crayon-v">n</span><span class="crayon-sy">)</span><span class="crayon-h"> </span><span class="crayon-st">for</span><span class="crayon-h"> </span><span class="crayon-i">n</span><span class="crayon-h"> </span><span class="crayon-st">in</span><span class="crayon-h"> </span><span class="crayon-v">sample_size_list</span><span class="crayon-h"> </span><span class="crayon-o">*</span><span class="crayon-h"> </span><span class="crayon-cn">3</span><span class="crayon-sy">]</span><span class="crayon-sy">,</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f05d177980472-16"><span class="crayon-h"> </span><span class="crayon-c"># фактическое СКО каждого распределения</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f05d177980472-17"><span class="crayon-h"> </span><span class="crayon-s">'Actual_std'</span><span class="crayon-h"> </span><span class="crayon-o">:</span><span class="crayon-h"> </span><span class="crayon-v">std</span><span class="crayon-sy">_</span>list</div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f05d177980472-18"><span class="crayon-sy">}</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f05d177980472-19"><span class="crayon-h"> </span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f05d177980472-20"><span class="crayon-c"># превратим словарь в датафрейм и округлим значения</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f05d177980472-21"><span class="crayon-v">pd</span><span class="crayon-sy">.</span><span class="crayon-e">DataFrame</span><span class="crayon-sy">(</span><span class="crayon-v">sampling_distributions</span><span class="crayon-sy">)</span><span class="crayon-sy">.</span><span class="crayon-k ">round</span><span class="crayon-sy">(</span><span class="crayon-cn">2</span><span class="crayon-sy">)</span><span class="crayon-sy">.</span><span class="crayon-e">astype</span><span class="crayon-sy">(</span><span class="crayon-k ">str</span><span class="crayon-sy">)</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0009 seconds] --> </div> <figure class="wp-block-image size-large is-resized"><img loading="lazy" decoding="async" width="1024" height="510" src="https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/sampling_distributions_table-1024x510.jpg" alt="параметры распределений" class="wp-image-11489" style="width:629px;height:313px" srcset="https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/sampling_distributions_table-1024x510.jpg 1024w, https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/sampling_distributions_table-300x149.jpg 300w, https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/sampling_distributions_table-768x383.jpg 768w, https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/sampling_distributions_table-1536x765.jpg 1536w, https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/sampling_distributions_table-1200x598.jpg 1200w, https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/sampling_distributions_table-600x299.jpg 600w, https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/sampling_distributions_table.jpg 1941w" sizes="(max-width: 1024px) 100vw, 1024px" /></figure> <p>Как мы видим, на выполняемость ЦПТ влияет не только размер выборки, но и количество этих выборок. Очевидно, что наибольшую близость к расчетным показателям демонстрируют распределения из 500 выборок.</p> <h4 class="wp-block-heading" id="17-standartnoe-normalnoe-raspredelenie">Стандартное нормальное распределение</h4> <p>Любое нормальное распределение со средним значением $\mu$ и СКО $\sigma$ можно привести к стандартному нормальному распределению (standard normal distribution) со средним значением ноль и СКО равным единице.</p> <p>$$ Z \sim {\mathcal N}(0, 1) $$</p> <p>Для этого воспользуемся следующей формулой.</p> <p>$$ z = \frac{x-\mu}{\sigma} $$</p> <p>Таким образом мы приводим каждое значение $x$ к соответствующей z-оценке (z-score), вычитая среднее $\mu$ и деля результат на СКО $\sigma$. Например, приведем данные о росте мужчин к стандартному виду (для этого воспользуемся <a href="https://www.dmitrymakarov.ru/python/npmath-10/#10-vektorizatsiya-i-translyatsiya">векторизацией и трансляцией</a> кода).</p> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51e7f05e287662321" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f05e287662321-1">1</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f05e287662321-2">2</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f05e287662321-1"><span class="crayon-v">height_men_standard</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-sy">(</span><span class="crayon-v">height_men</span><span class="crayon-h"> </span><span class="crayon-o">-</span><span class="crayon-h"> </span><span class="crayon-v">np</span><span class="crayon-sy">.</span><span class="crayon-e">mean</span><span class="crayon-sy">(</span><span class="crayon-v">height_men</span><span class="crayon-sy">)</span><span class="crayon-sy">)</span><span class="crayon-o">/</span><span class="crayon-v">np</span><span class="crayon-sy">.</span><span class="crayon-e">std</span><span class="crayon-sy">(</span><span class="crayon-v">height_men</span><span class="crayon-sy">)</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f05e287662321-2"><span class="crayon-v">height_men_standard</span><span class="crayon-sy">[</span><span class="crayon-o">:</span><span class="crayon-cn">10</span><span class="crayon-sy">]</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0002 seconds] --> </div> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51e7f060722706288" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f060722706288-1">1</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f060722706288-2">2</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f060722706288-1">array([ 0.49836188, -0.10076518, 0.59821639, 1.49690697, -0.20061969,</div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f060722706288-2"> -0.20061969, 1.59676148, 0.7979254 , -0.50018322, 0.49836188])</div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0000 seconds] --> </div> <p>Посмотрим на результат на графике.</p> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51e7f062857876382" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f062857876382-1">1</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f062857876382-2">2</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f062857876382-3">3</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f062857876382-4">4</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f062857876382-5">5</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f062857876382-6">6</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f062857876382-7">7</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f062857876382-8">8</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f062857876382-9">9</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f062857876382-10">10</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f062857876382-11">11</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f062857876382-12">12</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f062857876382-1"><span class="crayon-c"># зададим размер графика</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f062857876382-2"><span class="crayon-v">plt</span><span class="crayon-sy">.</span><span class="crayon-e">figure</span><span class="crayon-sy">(</span><span class="crayon-v">figsize</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-sy">(</span><span class="crayon-cn">10</span><span class="crayon-sy">,</span><span class="crayon-cn">6</span><span class="crayon-sy">)</span><span class="crayon-sy">)</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f062857876382-3"><span class="crayon-h"> </span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f062857876382-4"><span class="crayon-c"># построим график плотности</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f062857876382-5"><span class="crayon-v">sns</span><span class="crayon-sy">.</span><span class="crayon-e">kdeplot</span><span class="crayon-sy">(</span><span class="crayon-v">height_men_standard</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">fill</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-t">True</span><span class="crayon-sy">)</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f062857876382-6"><span class="crayon-h"> </span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f062857876382-7"><span class="crayon-c"># добавим подписи</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f062857876382-8"><span class="crayon-v">plt</span><span class="crayon-sy">.</span><span class="crayon-e">xlabel</span><span class="crayon-sy">(</span><span class="crayon-s">'z-score'</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">fontsize</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-cn">15</span><span class="crayon-sy">)</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f062857876382-9"><span class="crayon-v">plt</span><span class="crayon-sy">.</span><span class="crayon-e">ylabel</span><span class="crayon-sy">(</span><span class="crayon-s">'Плотность распределения'</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">fontsize</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-cn">15</span><span class="crayon-sy">)</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f062857876382-10"><span class="crayon-v">plt</span><span class="crayon-sy">.</span><span class="crayon-e">title</span><span class="crayon-sy">(</span><span class="crayon-s">'Стандартное распределение роста мужчин'</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">fontsize</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-cn">17</span><span class="crayon-sy">)</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f062857876382-11"><span class="crayon-h"> </span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f062857876382-12"><span class="crayon-v">plt</span><span class="crayon-sy">.</span><span class="crayon-e">show</span><span class="crayon-sy">(</span><span class="crayon-sy">)</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0004 seconds] --> </div> <figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="620" height="396" src="https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/standard_normal_distribution_height.png" alt="стандартизированное распределение роста мужчин" class="wp-image-11500" srcset="https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/standard_normal_distribution_height.png 620w, https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/standard_normal_distribution_height-300x192.png 300w, https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/standard_normal_distribution_height-600x383.png 600w" sizes="(max-width: 620px) 100vw, 620px" /></figure> <p>Стоит сказать, что ровно такого же результата можно добиться, применив метод .fit_transform() класса <strong>ScandardScaler</strong> модуля preprocessing библиотеки sklearn.</p> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51e7f063052691469" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f063052691469-1">1</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f063052691469-2">2</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f063052691469-3">3</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f063052691469-4">4</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f063052691469-5">5</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f063052691469-6">6</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f063052691469-7">7</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f063052691469-8">8</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f063052691469-9">9</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f063052691469-10">10</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f063052691469-11">11</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f063052691469-12">12</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f063052691469-13">13</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f063052691469-14">14</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f063052691469-1"><span class="crayon-c"># импортируем класс StandardScaler</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f063052691469-2"><span class="crayon-st">from</span><span class="crayon-h"> </span><span class="crayon-v">sklearn</span><span class="crayon-sy">.</span><span class="crayon-e">preprocessing </span><span class="crayon-r">import</span><span class="crayon-h"> </span><span class="crayon-i">StandardScaler</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f063052691469-3"><span class="crayon-h"> </span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f063052691469-4"><span class="crayon-c"># создаем объект этого класса</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f063052691469-5"><span class="crayon-v">scaler</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-e">StandardScaler</span><span class="crayon-sy">(</span><span class="crayon-sy">)</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f063052691469-6"><span class="crayon-h"> </span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f063052691469-7"><span class="crayon-c"># применяем метод .fit_transform() к данным о росте, предварительно превратив их в двумерный массив</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f063052691469-8"><span class="crayon-v">scaled_height_men</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-v">scaler</span><span class="crayon-sy">.</span><span class="crayon-e">fit_transform</span><span class="crayon-sy">(</span><span class="crayon-v">height_men</span><span class="crayon-sy">.</span><span class="crayon-e">reshape</span><span class="crayon-sy">(</span><span class="crayon-o">-</span><span class="crayon-cn">1</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-cn">1</span><span class="crayon-sy">)</span><span class="crayon-sy">)</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f063052691469-9"><span class="crayon-h"> </span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f063052691469-10"><span class="crayon-c"># убираем второе измерение</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f063052691469-11"><span class="crayon-v">scaled_height_men</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-v">scaled_height_men</span><span class="crayon-sy">.</span><span class="crayon-e">flatten</span><span class="crayon-sy">(</span><span class="crayon-sy">)</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f063052691469-12"><span class="crayon-h"> </span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f063052691469-13"><span class="crayon-c"># и сравниваем получившийся результат с ранее стандартизированными данными</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f063052691469-14"><span class="crayon-v">np</span><span class="crayon-sy">.</span><span class="crayon-e">array_equiv</span><span class="crayon-sy">(</span><span class="crayon-v">height_men_standard</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">scaled_height_men</span><span class="crayon-sy">)</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0005 seconds] --> </div> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51e7f064434848502" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f064434848502-1">1</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f064434848502-1">True</div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0000 seconds] --> </div> <p>Мы уже использовали этот инструмент для нормализации данных в рамках вводного курса (в задачах <a href="https://www.dmitrymakarov.ru/intro/classification-15/#4-normalizatsiya-dannykh">классификации</a> и <a href="https://www.dmitrymakarov.ru/intro/clustering-16/#6-etap-2-predvaritelnaya-obrabotka-dannykh">кластеризации</a>), а также при <a href="https://www.dmitrymakarov.ru/python/files-04/#16-normalizatsiya-dannykh">работе с файлами в Google Colab</a>.</p> <p>Добавлю, что стандартное нормальное распределение можно также создать с помощью функции <strong>np.random.standard_normal()</strong>.</p> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51e7f065825994262" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f065825994262-1">1</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f065825994262-2">2</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f065825994262-3">3</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f065825994262-4">4</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f065825994262-5">5</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f065825994262-1"><span class="crayon-c"># создадим массив из 10 000 значений</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f065825994262-2"><span class="crayon-v">st_norm</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-v">np</span><span class="crayon-sy">.</span><span class="crayon-k ">random</span><span class="crayon-sy">.</span><span class="crayon-e">standard_normal</span><span class="crayon-sy">(</span><span class="crayon-cn">10000</span><span class="crayon-sy">)</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f065825994262-3"><span class="crayon-h"> </span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f065825994262-4"><span class="crayon-c"># посмотрим на первые 10</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f065825994262-5"><span class="crayon-v">st_norm</span><span class="crayon-sy">[</span><span class="crayon-o">:</span><span class="crayon-cn">10</span><span class="crayon-sy">]</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0002 seconds] --> </div> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51e7f066617049552" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f066617049552-1">1</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f066617049552-2">2</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f066617049552-1">array([-0.76366945, -1.11864174, -0.77088274, 0.96929238, -0.69869956,</div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f066617049552-2"> -1.34853749, -0.94994848, 0.99902749, 0.30575659, -0.45619504])</div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0000 seconds] --> </div> <p>Посмотрим на результат.</p> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51e7f067626289360" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f067626289360-1">1</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f067626289360-2">2</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f067626289360-3">3</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f067626289360-4">4</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f067626289360-5">5</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f067626289360-6">6</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f067626289360-7">7</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f067626289360-8">8</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f067626289360-9">9</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f067626289360-10">10</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f067626289360-11">11</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f067626289360-12">12</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f067626289360-1"><span class="crayon-c"># зададим размер графика</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f067626289360-2"><span class="crayon-v">plt</span><span class="crayon-sy">.</span><span class="crayon-e">figure</span><span class="crayon-sy">(</span><span class="crayon-v">figsize</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-sy">(</span><span class="crayon-cn">10</span><span class="crayon-sy">,</span><span class="crayon-cn">6</span><span class="crayon-sy">)</span><span class="crayon-sy">)</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f067626289360-3"><span class="crayon-h"> </span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f067626289360-4"><span class="crayon-c"># построим график плотности</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f067626289360-5"><span class="crayon-v">sns</span><span class="crayon-sy">.</span><span class="crayon-e">kdeplot</span><span class="crayon-sy">(</span><span class="crayon-v">st_norm</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">fill</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-t">True</span><span class="crayon-sy">)</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f067626289360-6"><span class="crayon-h"> </span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f067626289360-7"><span class="crayon-c"># добавим подписи</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f067626289360-8"><span class="crayon-v">plt</span><span class="crayon-sy">.</span><span class="crayon-e">xlabel</span><span class="crayon-sy">(</span><span class="crayon-s">'z-score'</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">fontsize</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-cn">15</span><span class="crayon-sy">)</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f067626289360-9"><span class="crayon-v">plt</span><span class="crayon-sy">.</span><span class="crayon-e">ylabel</span><span class="crayon-sy">(</span><span class="crayon-s">'Плотность распределения'</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">fontsize</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-cn">15</span><span class="crayon-sy">)</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f067626289360-10"><span class="crayon-v">plt</span><span class="crayon-sy">.</span><span class="crayon-e">title</span><span class="crayon-sy">(</span><span class="crayon-s">'Стандартное нормальное распределение'</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">fontsize</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-cn">17</span><span class="crayon-sy">)</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f067626289360-11"><span class="crayon-h"> </span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f067626289360-12"><span class="crayon-v">plt</span><span class="crayon-sy">.</span><span class="crayon-e">show</span><span class="crayon-sy">(</span><span class="crayon-sy">)</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0005 seconds] --> </div> <figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="620" height="396" src="https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/standard_normal_distribution.png" alt="стандартное нормальное распределение" class="wp-image-11505" srcset="https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/standard_normal_distribution.png 620w, https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/standard_normal_distribution-300x192.png 300w, https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/standard_normal_distribution-600x383.png 600w" sizes="(max-width: 620px) 100vw, 620px" /></figure> <p>Создаваемый массив также может быть многомерным.</p> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51e7f068404186268" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f068404186268-1">1</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f068404186268-2">2</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f068404186268-1"><span class="crayon-c"># для этого измерения нужно передать в виде кортежа</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f068404186268-2"><span class="crayon-v">np</span><span class="crayon-sy">.</span><span class="crayon-k ">random</span><span class="crayon-sy">.</span><span class="crayon-e">standard_normal</span><span class="crayon-sy">(</span><span class="crayon-sy">(</span><span class="crayon-cn">2</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-cn">3</span><span class="crayon-sy">)</span><span class="crayon-sy">)</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0001 seconds] --> </div> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51e7f069130963396" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f069130963396-1">1</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f069130963396-2">2</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f069130963396-1">array([[-0.40187015, -0.0797878 , -0.21066058],</div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f069130963396-2"> [-0.70034594, 0.10488661, 0.85464581]])</div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0000 seconds] --> </div> <p>Как и в случае обычного нормального распределения, мы можем найти значение (в данном случае z-score) по площади с помощью квантиль-функции.</p> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51e7f06a569180867" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f06a569180867-1">1</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f06a569180867-2">2</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f06a569180867-3">3</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f06a569180867-4">4</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f06a569180867-1"><span class="crayon-c"># вычислим z-score, соответствующий 95 процентам площади под кривой</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f06a569180867-2"><span class="crayon-c"># loc = 0, scale = 1 можно не указывать, это параметры по умолчанию</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f06a569180867-3"><span class="crayon-v">zscore</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-v">norm</span><span class="crayon-sy">.</span><span class="crayon-e">ppf</span><span class="crayon-sy">(</span><span class="crayon-cn">0.95</span><span class="crayon-sy">)</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f06a569180867-4"><span class="crayon-v">zscore</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0001 seconds] --> </div> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51e7f06c273015151" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f06c273015151-1">1</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f06c273015151-1">1.6448536269514722</div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0000 seconds] --> </div> <p>Убедиться в верности результата можно с помощью функции распределения.</p> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51e7f06d359654915" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f06d359654915-1">1</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f06d359654915-1"><span class="crayon-v">norm</span><span class="crayon-sy">.</span><span class="crayon-e">cdf</span><span class="crayon-sy">(</span><span class="crayon-v">zscore</span><span class="crayon-sy">)</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0001 seconds] --> </div> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51e7f06e752328535" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f06e752328535-1">1</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f06e752328535-1">0.95</div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0000 seconds] --> </div> <h4 class="wp-block-heading" id="18-kriterii-normalnosti-raspredeleniya">Критерии нормальности распределения</h4> <p>Давайте еще раз посмотрим на распределение выборочных средних. Мы сказали, что при определенных условиях оно стремится к нормальному.</p> <p>Одновременно пока что мы определяли нормальность распределения «на глаз» (с помощью гистограммы, графика плотности или boxplot), хотя в некоторых случаях полезно иметь более надежный критерий нормальности. Это важно, например, при оценке:</p> <ul class="wp-block-list"> <li>Распределения остатков модели линейной регрессии;</li> <li>Распределения наблюдений в классах модели линейного дискриминантного анализа (Linear Discriminant Analysis, LDA).</li> </ul> <p>Рассмотрим два способа оценки нормальности распределения.</p> <h5 class="wp-block-heading" id="19-sposob-1-grafik-normalnoy-veroyatnosti">Способ 1. График нормальной вероятности</h5> <p>График нормальной вероятности (normal probability plot) показывает соотношение упорядоченных по возрастанию данных и соответствующих им квантилей нормального распределения.</p> <p class="has-background" style="background-color:#ffe8c4">Если данные распределены нормально, все точки будут лежать на одной прямой, если нет — мы будем наблюдать отклонения.</p> <p>Алгоритм создания графика нормальной вероятности следующий:</p> <ol class="wp-block-list"> <li>Сортируем исходные данные по возрастанию;</li> <li>Находим накопленную вероятность (cumulative probability) каждого значения;</li> <li>С помощью квантиль-функции выясняем, какому квантилю соответствовала бы эта вероятность, если бы распределение было нормальным;</li> <li>По оси $x$ отмечаем квантили, по оси $y$ — отсортированные данные.</li> </ol> <p>Накопленную вероятность будем вычислять по формуле</p> <p>$$ P = \frac{i-0.375}{n+0.25} $$</p> <p>где $i$ — это индекс (начиная с единицы) значения в перечне отсортированных данных, а $n$ — количество наблюдений.</p> <p>С помощью Питона построим график нормальной вероятности для данных о росте.</p> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51e7f06f982729692" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f06f982729692-1">1</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f06f982729692-2">2</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f06f982729692-3">3</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f06f982729692-4">4</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f06f982729692-5">5</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f06f982729692-6">6</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f06f982729692-7">7</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f06f982729692-8">8</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f06f982729692-9">9</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f06f982729692-10">10</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f06f982729692-11">11</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f06f982729692-1"><span class="crayon-c"># вначале отсортируем данные о росте</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f06f982729692-2"><span class="crayon-v">height_men_srt</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-k ">sorted</span><span class="crayon-sy">(</span><span class="crayon-v">height_men</span><span class="crayon-sy">)</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f06f982729692-3"><span class="crayon-h"> </span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f06f982729692-4"><span class="crayon-c"># рассчитаем длину массива</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f06f982729692-5"><span class="crayon-v">n</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-k ">len</span><span class="crayon-sy">(</span><span class="crayon-v">height_men_srt</span><span class="crayon-sy">)</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f06f982729692-6"><span class="crayon-h"> </span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f06f982729692-7"><span class="crayon-c"># вычислим накопленную вероятность</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f06f982729692-8"><span class="crayon-v">cum_probability</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-sy">[</span><span class="crayon-sy">(</span><span class="crayon-v">i</span><span class="crayon-h"> </span><span class="crayon-o">-</span><span class="crayon-h"> </span><span class="crayon-cn">0.375</span><span class="crayon-sy">)</span><span class="crayon-o">/</span><span class="crayon-sy">(</span><span class="crayon-v">n</span><span class="crayon-h"> </span><span class="crayon-o">+</span><span class="crayon-h"> </span><span class="crayon-cn">0.25</span><span class="crayon-sy">)</span><span class="crayon-h"> </span><span class="crayon-st">for</span><span class="crayon-h"> </span><span class="crayon-i">i</span><span class="crayon-h"> </span><span class="crayon-st">in</span><span class="crayon-h"> </span><span class="crayon-k ">range</span><span class="crayon-sy">(</span><span class="crayon-cn">1</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">n</span><span class="crayon-h"> </span><span class="crayon-o">+</span><span class="crayon-h"> </span><span class="crayon-cn">1</span><span class="crayon-sy">)</span><span class="crayon-sy">]</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f06f982729692-9"><span class="crayon-h"> </span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f06f982729692-10"><span class="crayon-c"># рассчитаем квантили, как если бы данные были нормально распределены</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f06f982729692-11"><span class="crayon-v">quantiles</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-v">norm</span><span class="crayon-sy">.</span><span class="crayon-e">ppf</span><span class="crayon-sy">(</span><span class="crayon-v">cum_probability</span><span class="crayon-sy">)</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0005 seconds] --> </div> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51e7f071457010979" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f071457010979-1">1</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f071457010979-2">2</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f071457010979-1"><span class="crayon-c"># как и должно быть, накопленная вероятность - это значения от 0 до 1</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f071457010979-2"><span class="crayon-v">cum_probability</span><span class="crayon-sy">[</span><span class="crayon-cn">0</span><span class="crayon-sy">]</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">cum_probability</span><span class="crayon-sy">[</span><span class="crayon-o">-</span><span class="crayon-cn">1</span><span class="crayon-sy">]</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0001 seconds] --> </div> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51e7f072265794480" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f072265794480-1">1</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f072265794480-1">(6.249984375039063e-06, 0.999993750015625)</div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0000 seconds] --> </div> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51e7f073294749666" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f073294749666-1">1</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f073294749666-2">2</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f073294749666-1"><span class="crayon-c"># также посмотрим на соответствующие им квантили</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f073294749666-2"><span class="crayon-v">quantiles</span><span class="crayon-sy">[</span><span class="crayon-cn">0</span><span class="crayon-sy">]</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">quantiles</span><span class="crayon-sy">[</span><span class="crayon-o">-</span><span class="crayon-cn">1</span><span class="crayon-sy">]</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0001 seconds] --> </div> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51e7f074416574603" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f074416574603-1">1</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f074416574603-1">(-4.368680139037586, 4.368680139037566)</div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0000 seconds] --> </div> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51e7f075854503177" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f075854503177-1">1</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f075854503177-2">2</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f075854503177-3">3</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f075854503177-4">4</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f075854503177-5">5</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f075854503177-6">6</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f075854503177-7">7</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f075854503177-8">8</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f075854503177-9">9</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f075854503177-10">10</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f075854503177-11">11</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f075854503177-12">12</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f075854503177-13">13</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f075854503177-1"><span class="crayon-c"># зададим размер графика</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f075854503177-2"><span class="crayon-v">plt</span><span class="crayon-sy">.</span><span class="crayon-e">figure</span><span class="crayon-sy">(</span><span class="crayon-v">figsize</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-sy">(</span><span class="crayon-cn">10</span><span class="crayon-sy">,</span><span class="crayon-cn">8</span><span class="crayon-sy">)</span><span class="crayon-sy">)</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f075854503177-3"><span class="crayon-h"> </span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f075854503177-4"><span class="crayon-c"># на точечной диаграмме по оси x разместим теоретические квантили</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f075854503177-5"><span class="crayon-c"># по оси y - отсортированные по возрастанию данные</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f075854503177-6"><span class="crayon-v">plt</span><span class="crayon-sy">.</span><span class="crayon-e">scatter</span><span class="crayon-sy">(</span><span class="crayon-v">quantiles</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">height_men_srt</span><span class="crayon-sy">)</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f075854503177-7"><span class="crayon-h"> </span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f075854503177-8"><span class="crayon-c"># добавим подписи</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f075854503177-9"><span class="crayon-v">plt</span><span class="crayon-sy">.</span><span class="crayon-e">xlabel</span><span class="crayon-sy">(</span><span class="crayon-s">'Теоретические квантили'</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">fontsize</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-cn">15</span><span class="crayon-sy">)</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f075854503177-10"><span class="crayon-v">plt</span><span class="crayon-sy">.</span><span class="crayon-e">ylabel</span><span class="crayon-sy">(</span><span class="crayon-s">'Отсортированные данные'</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">fontsize</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-cn">15</span><span class="crayon-sy">)</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f075854503177-11"><span class="crayon-v">plt</span><span class="crayon-sy">.</span><span class="crayon-e">title</span><span class="crayon-sy">(</span><span class="crayon-s">'График нормальной вероятности'</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">fontsize</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-cn">17</span><span class="crayon-sy">)</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f075854503177-12"><span class="crayon-h"> </span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f075854503177-13"><span class="crayon-v">plt</span><span class="crayon-sy">.</span><span class="crayon-e">show</span><span class="crayon-sy">(</span><span class="crayon-sy">)</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0004 seconds] --> </div> <figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="617" height="505" src="https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/normal_probability_plot_from_scratch.png" alt="график нормальной вероятности" class="wp-image-11518" srcset="https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/normal_probability_plot_from_scratch.png 617w, https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/normal_probability_plot_from_scratch-300x246.png 300w, https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/normal_probability_plot_from_scratch-600x491.png 600w" sizes="(max-width: 617px) 100vw, 617px" /></figure> <p>Как мы видим, в целом данные распределены нормально (что разумеется ожидаемо, потому что мы генерировали их с помощью функции <strong>np.random.normal()</strong>).</p> <p>Можно также воспользоваться <strong>функцией probplot()</strong> модуля stats библиотеки scipy.</p> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51e7f076184521905" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f076184521905-1">1</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f076184521905-1"><span class="crayon-st">from</span><span class="crayon-h"> </span><span class="crayon-v">scipy</span><span class="crayon-sy">.</span><span class="crayon-e">stats </span><span class="crayon-r">import</span><span class="crayon-h"> </span><span class="crayon-v">probplot</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0001 seconds] --> </div> <p>Построим график для тех же данных о росте.</p> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51e7f077910169304" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f077910169304-1">1</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f077910169304-2">2</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f077910169304-3">3</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f077910169304-4">4</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f077910169304-5">5</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f077910169304-6">6</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f077910169304-7">7</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f077910169304-1"><span class="crayon-v">plt</span><span class="crayon-sy">.</span><span class="crayon-e">figure</span><span class="crayon-sy">(</span><span class="crayon-v">figsize</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-sy">(</span><span class="crayon-cn">10</span><span class="crayon-sy">,</span><span class="crayon-cn">8</span><span class="crayon-sy">)</span><span class="crayon-sy">)</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f077910169304-2"><span class="crayon-h"> </span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f077910169304-3"><span class="crayon-c"># параметр dist = 'norm' указывает на сравнение данных с нормальным распределением</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f077910169304-4"><span class="crayon-c"># plot = plt строит график с помощью matplotlib.pyplot</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f077910169304-5"><span class="crayon-e">probplot</span><span class="crayon-sy">(</span><span class="crayon-v">height_men</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">dist</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-s">'norm'</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">plot</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-v">plt</span><span class="crayon-sy">)</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f077910169304-6"><span class="crayon-h"> </span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f077910169304-7"><span class="crayon-v">plt</span><span class="crayon-sy">.</span><span class="crayon-e">show</span><span class="crayon-sy">(</span><span class="crayon-sy">)</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0003 seconds] --> </div> <figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="612" height="496" src="https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/scipy_probplot_height.png" alt="функция probplot()" class="wp-image-11521" srcset="https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/scipy_probplot_height.png 612w, https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/scipy_probplot_height-300x243.png 300w, https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/scipy_probplot_height-600x486.png 600w" sizes="(max-width: 612px) 100vw, 612px" /></figure> <p>Эта функция использует другую формулу для вычисления накопленной вероятности (а именно Filliben’s estimate), поэтому квантили незначительно, но будут отличаться от написанного нами алгоритма.</p> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51e7f078784890531" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f078784890531-1">1</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f078784890531-2">2</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f078784890531-3">3</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f078784890531-4">4</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f078784890531-5">5</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f078784890531-6">6</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f078784890531-1"><span class="crayon-c"># функция probplot() при параметрах plot = None, fit = False возвращает два массива:</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f078784890531-2"><span class="crayon-c"># квантили и отсортированные данные, возьмем первый массив [0]</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f078784890531-3"><span class="crayon-v">quantiles</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-e">probplot</span><span class="crayon-sy">(</span><span class="crayon-v">height_men</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">dist</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-s">'norm'</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">plot</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-t">None</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">fit</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-t">False</span><span class="crayon-sy">)</span><span class="crayon-sy">[</span><span class="crayon-cn">0</span><span class="crayon-sy">]</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f078784890531-4"><span class="crayon-h"> </span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f078784890531-5"><span class="crayon-c"># и посмотрим на первое и последнее значения</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f078784890531-6"><span class="crayon-v">quantiles</span><span class="crayon-sy">[</span><span class="crayon-cn">0</span><span class="crayon-sy">]</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">quantiles</span><span class="crayon-sy">[</span><span class="crayon-o">-</span><span class="crayon-cn">1</span><span class="crayon-sy">]</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0003 seconds] --> </div> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51e7f07a987029040" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f07a987029040-1">1</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f07a987029040-1">(-4.346021549886044, 4.346021549886044)</div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0000 seconds] --> </div> <p>Давайте построим график нормальной вероятности для скошенного вправо распределения (мы договорились, что это распределение зарплат).</p> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51e7f07b669631553" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f07b669631553-1">1</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f07b669631553-2">2</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f07b669631553-3">3</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f07b669631553-1"><span class="crayon-v">plt</span><span class="crayon-sy">.</span><span class="crayon-e">figure</span><span class="crayon-sy">(</span><span class="crayon-v">figsize</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-sy">(</span><span class="crayon-cn">10</span><span class="crayon-sy">,</span><span class="crayon-cn">8</span><span class="crayon-sy">)</span><span class="crayon-sy">)</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f07b669631553-2"><span class="crayon-e">probplot</span><span class="crayon-sy">(</span><span class="crayon-v">salaries</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">dist</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-s">'norm'</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">plot</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-v">plt</span><span class="crayon-sy">)</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f07b669631553-3"><span class="crayon-v">plt</span><span class="crayon-sy">.</span><span class="crayon-e">show</span><span class="crayon-sy">(</span><span class="crayon-sy">)</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0003 seconds] --> </div> <figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="620" height="496" src="https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/skewed_prob_plot.png" alt="график нормальной вероятности для скошенного вправо распределения" class="wp-image-11529" srcset="https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/skewed_prob_plot.png 620w, https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/skewed_prob_plot-300x240.png 300w, https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/skewed_prob_plot-600x480.png 600w" sizes="(max-width: 620px) 100vw, 620px" /></figure> <p>Здесь мы видим, что график нормальной вероятности довольно сильно отклоняется от «идеальных» значений, лежащих на диагонали.</p> <p>Остается построить график для распределения выборочных средних.</p> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51e7f07c216343577" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f07c216343577-1">1</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f07c216343577-2">2</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f07c216343577-3">3</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f07c216343577-4">4</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f07c216343577-5">5</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f07c216343577-6">6</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f07c216343577-7">7</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f07c216343577-1"><span class="crayon-c"># снова воспользуемся функцией sample_means() с параметрами n_samples = 500, sample_size = 30</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f07c216343577-2"><span class="crayon-v">sampling_dist</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-e">sample_means</span><span class="crayon-sy">(</span><span class="crayon-v">salaries</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-cn">500</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-cn">30</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">replace</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-t">False</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">random_state</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-cn">42</span><span class="crayon-sy">)</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f07c216343577-3"><span class="crayon-h"> </span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f07c216343577-4"><span class="crayon-c"># построим график нормальной вероятности</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f07c216343577-5"><span class="crayon-v">plt</span><span class="crayon-sy">.</span><span class="crayon-e">figure</span><span class="crayon-sy">(</span><span class="crayon-v">figsize</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-sy">(</span><span class="crayon-cn">10</span><span class="crayon-sy">,</span><span class="crayon-cn">8</span><span class="crayon-sy">)</span><span class="crayon-sy">)</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f07c216343577-6"><span class="crayon-e">probplot</span><span class="crayon-sy">(</span><span class="crayon-v">sampling_dist</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">dist</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-s">'norm'</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">plot</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-v">plt</span><span class="crayon-sy">)</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f07c216343577-7"><span class="crayon-v">plt</span><span class="crayon-sy">.</span><span class="crayon-e">show</span><span class="crayon-sy">(</span><span class="crayon-sy">)</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0004 seconds] --> </div> <figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="612" height="496" src="https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/sampling_distribution_normal_probability_plot.png" alt="график нормальной вероятности для распределения выборочных средних" class="wp-image-11541" srcset="https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/sampling_distribution_normal_probability_plot.png 612w, https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/sampling_distribution_normal_probability_plot-300x243.png 300w, https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/sampling_distribution_normal_probability_plot-600x486.png 600w" sizes="(max-width: 612px) 100vw, 612px" /></figure> <p>Как и должно быть, это распределение ближе к нормальному.</p> <h5 class="wp-block-heading" id="20-sposob-2-test-shapiro-uilka">Способ 2. Тест Шапиро-Уилка</h5> <p>Тест Шапиро-Уилка (Shapiro-Wilk test) позволяет сделать <a href="https://www.dmitrymakarov.ru/intro/inference-09/#4-2-proverka-gipotezy">статистически значимый вывод</a> о нормальности распределения.</p> <ul class="wp-block-list"> <li>Нулевая гипотеза предполагает, что распределение нормально;</li> <li>Альтернативная гипотеза утверждает обратное.</li> </ul> <p class="has-background" style="background-color:#ffe8c4">Тест Шапиро-Уилка чувствителен к количеству элементов (N) в наборе данных и теряет точность при N > 5000.</p> <p>Проведем тест для распределений роста и распределения зарплат при пороговом значении 0,05, однако вначале создадим распределения с меньшим количеством элементов.</p> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51e7f07d748704123" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f07d748704123-1">1</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f07d748704123-2">2</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f07d748704123-3">3</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f07d748704123-4">4</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f07d748704123-1"><span class="crayon-v">np</span><span class="crayon-sy">.</span><span class="crayon-k ">random</span><span class="crayon-sy">.</span><span class="crayon-e">seed</span><span class="crayon-sy">(</span><span class="crayon-cn">42</span><span class="crayon-sy">)</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f07d748704123-2"><span class="crayon-v">height_men</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-v">np</span><span class="crayon-sy">.</span><span class="crayon-k ">round</span><span class="crayon-sy">(</span><span class="crayon-v">np</span><span class="crayon-sy">.</span><span class="crayon-k ">random</span><span class="crayon-sy">.</span><span class="crayon-e">normal</span><span class="crayon-sy">(</span><span class="crayon-cn">180</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-cn">10</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-cn">1000</span><span class="crayon-sy">)</span><span class="crayon-sy">)</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f07d748704123-3"><span class="crayon-h"> </span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f07d748704123-4"><span class="crayon-v">salaries</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-v">skewnorm</span><span class="crayon-sy">.</span><span class="crayon-e">rvs</span><span class="crayon-sy">(</span><span class="crayon-v">a</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-cn">20</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">loc</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-cn">20</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">scale</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-cn">80</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">size</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-cn">1000</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">random_state</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-cn">42</span><span class="crayon-sy">)</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0005 seconds] --> </div> <p>Начнем с роста.</p> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51e7f07f568029340" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f07f568029340-1">1</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f07f568029340-2">2</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f07f568029340-3">3</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f07f568029340-4">4</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f07f568029340-1"><span class="crayon-st">from</span><span class="crayon-h"> </span><span class="crayon-v">scipy</span><span class="crayon-sy">.</span><span class="crayon-e">stats </span><span class="crayon-r">import</span><span class="crayon-h"> </span><span class="crayon-i">shapiro</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f07f568029340-2"><span class="crayon-h"> </span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f07f568029340-3"><span class="crayon-v">_</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">p_value</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-e">shapiro</span><span class="crayon-sy">(</span><span class="crayon-v">height_men</span><span class="crayon-sy">)</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f07f568029340-4"><span class="crayon-v">p_value</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0002 seconds] --> </div> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51e7f080268126483" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f080268126483-1">1</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f080268126483-1">0.1709005981683731</div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0000 seconds] --> </div> <p>Теперь посмотрим на зарплаты.</p> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51e7f081259281993" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f081259281993-1">1</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f081259281993-2">2</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f081259281993-1"><span class="crayon-v">_</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">p_value</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-e">shapiro</span><span class="crayon-sy">(</span><span class="crayon-v">salaries</span><span class="crayon-sy">)</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f081259281993-2"><span class="crayon-v">p_value</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0001 seconds] --> </div> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51e7f082950486325" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f082950486325-1">1</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f082950486325-1">1.3729417993307101e-21</div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0000 seconds] --> </div> <p>Как и ожидалось, в первом случае мы не смогли отвергнуть нулевую гипотезу о нормальном распределении (p-value > 0,05), во втором случае мы можем это сделать (p-value < 0,05).</p> <h4 class="wp-block-heading" id="21-normalnoe-priblizhenie-binomialnogo-raspredeleniya">Нормальное приближение биномиального распределения</h4> <h4 class="wp-block-heading" id="22-teorema-muavra-laplasa">Теорема Муавра-Лапласа</h4> <p><strong>Теорема Муавра-Лапласа</strong> (de Moivre-Laplace theorem), частный случай Центральной предельной теоремы, утверждает, что при определенных условиях нормальное распределение может быть использовано в качестве приближения биномиального распределения (Normal Approximation to Binomial Distribution).</p> <p>Напомню формулу биномиального распределения</p> <p>$$ P(X = k) = \binom{n}{k} p^k (1-p)^{n-k} $$</p> <p>где $n$ — количество испытаний, $k$ — количество успехов, а $p$ — вероятность успеха. Так вот если $np \geq 5$ и $n(1−p) \geq 5$, то выполняется следующее</p> <p>$$ B(n, p) \sim {\mathcal N}(np, \sqrt{np(1-p)}) $$</p> <p class="has-background" style="background-color:#ffe8c4">Другими словами, если взять вероятность успеха $p$ близкое к 0,5, либо достаточно большое количество испытаний $n$, то биномиальное распределение по мере увеличения $n$ будет приближаться нормальному распределению.</p> <p>Проиллюстрируем теорему с помощью Питона. Будем подбрасывать несимметричную монету ($p = 0{,}8$) по 3, 5, 10, 15, 25 и 50 раз и сравнивать получившиеся распределения с нормальным.</p> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51e7f083284714882" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f083284714882-1">1</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f083284714882-2">2</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f083284714882-3">3</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f083284714882-4">4</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f083284714882-5">5</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f083284714882-6">6</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f083284714882-7">7</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f083284714882-8">8</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f083284714882-9">9</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f083284714882-10">10</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f083284714882-11">11</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f083284714882-12">12</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f083284714882-13">13</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f083284714882-14">14</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f083284714882-15">15</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f083284714882-16">16</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f083284714882-17">17</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f083284714882-18">18</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f083284714882-19">19</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f083284714882-20">20</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f083284714882-21">21</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f083284714882-22">22</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f083284714882-23">23</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f083284714882-24">24</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f083284714882-25">25</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f083284714882-26">26</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f083284714882-27">27</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f083284714882-28">28</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f083284714882-29">29</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f083284714882-30">30</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f083284714882-31">31</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f083284714882-32">32</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f083284714882-33">33</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f083284714882-34">34</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f083284714882-35">35</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f083284714882-36">36</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f083284714882-37">37</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f083284714882-38">38</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f083284714882-39">39</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f083284714882-40">40</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f083284714882-41">41</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f083284714882-42">42</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f083284714882-43">43</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f083284714882-44">44</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f083284714882-45">45</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f083284714882-46">46</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f083284714882-47">47</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size: … [Строка слишком длинная. Вы можете скачать файл] </tr> </table> </div> </div> <!-- [Format Time: 0.0022 seconds] --> </div> <figure class="wp-block-image size-full is-resized"><img loading="lazy" decoding="async" width="731" height="731" src="https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/binomial_approximation_to_normal_distribution_n_35.png" alt="теорема Муавра-Лапласа" class="wp-image-11572" style="width:579px;height:579px" srcset="https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/binomial_approximation_to_normal_distribution_n_35.png 731w, https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/binomial_approximation_to_normal_distribution_n_35-300x300.png 300w, https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/binomial_approximation_to_normal_distribution_n_35-150x150.png 150w, https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/binomial_approximation_to_normal_distribution_n_35-600x600.png 600w" sizes="(max-width: 731px) 100vw, 731px" /></figure> <figure class="wp-block-image size-full is-resized"><img loading="lazy" decoding="async" width="741" height="725" src="https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/binomial_approximation_to_normal_distribution_n_1015.png" alt="теорема Муавра-Лапласа 2" class="wp-image-11576" style="width:585px;height:573px" srcset="https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/binomial_approximation_to_normal_distribution_n_1015.png 741w, https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/binomial_approximation_to_normal_distribution_n_1015-300x294.png 300w, https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/binomial_approximation_to_normal_distribution_n_1015-600x587.png 600w" sizes="(max-width: 741px) 100vw, 741px" /></figure> <figure class="wp-block-image size-full is-resized"><img loading="lazy" decoding="async" width="739" height="729" src="https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/binomial_approximation_to_normal_distribution_n_2550.png" alt="теорема Муавра-Лапласа 3" class="wp-image-11574" style="width:579px;height:571px" srcset="https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/binomial_approximation_to_normal_distribution_n_2550.png 739w, https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/binomial_approximation_to_normal_distribution_n_2550-300x296.png 300w, https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/binomial_approximation_to_normal_distribution_n_2550-600x592.png 600w" sizes="(max-width: 739px) 100vw, 739px" /></figure> <p>Как мы видим, вначале (например, при $n = 3$), распределение было ожидаемо скошенным, при этом по мере увеличения количества бросков оно стало все больше «вписываться» в график плотности нормального распределения.</p> <h5 class="wp-block-heading" id="23-popravka-na-nepreryvnost-raspredeleniya">Поправка на непрерывность распределения</h5> <p>Нормальное приближение биномиального распределения удобно использовать, когда нужно посчитать вероятность большого числа исходов. Однако прежде внесем одно уточнение.</p> <p>На графике ниже видно, что для расчета биномиальной вероятности нам нужно сложить площади столбцов гистограммы. Например, чтобы найти вероятность выпадения не более одного орла при трех последовательных подбрасываниях монеты, нужно сложить первый и второй столбцы.</p> <figure class="wp-block-image size-full is-resized"><img loading="lazy" decoding="async" width="760" height="509" src="https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/binomial_less_than_or_equal.png" alt="поправка на непрерывность распределения" class="wp-image-11612" style="width:519px;height:348px" srcset="https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/binomial_less_than_or_equal.png 760w, https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/binomial_less_than_or_equal-300x201.png 300w, https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/binomial_less_than_or_equal-600x402.png 600w" sizes="(max-width: 760px) 100vw, 760px" /></figure> <p>Получаем</p> <p>$$ P_B(X ≤ 1) = P_B(X = 0) + P_B(X = 1) = \frac{1}{8} + \frac{3}{8} = \frac{4}{8} = \frac{1}{2} $$</p> <p>При этом, если мы хотим рассчитать эту же площадь с помощью кривой нормального распределения, нам нужно сместить границу таким образом, чтобы захватить все интересующие нас столбцы. В данном случае прибавить $0{,}5$. То есть $P_N (X < 1{,}5) $.</p> <figure class="wp-block-image size-full is-resized"><img loading="lazy" decoding="async" width="758" height="510" src="https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/normal_approximation_less_than_or_equal.png" alt="поправка на непрерывность распределения 2" class="wp-image-11613" style="width:514px;height:346px" srcset="https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/normal_approximation_less_than_or_equal.png 758w, https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/normal_approximation_less_than_or_equal-300x202.png 300w, https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/normal_approximation_less_than_or_equal-600x404.png 600w" sizes="(max-width: 758px) 100vw, 758px" /></figure> <p>Воспользуемся теоремой Муавра-Лапласа для расчета среднего и СКО (напомню $n = 3$, $p = 0{,}5$).</p> <p>$$ \mu = np = 3 \times 0{,}5 = 1{,}5 $$</p> <p>$$ \sigma = \sqrt{np(1-p)} = \sqrt{3 \times 0{,}5 \times 0{,}5} = 0{,}75 $$</p> <p>Остается воспользоваться Питоном для нахождения площади под кривой нормального распределения.</p> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51e7f086029819366" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f086029819366-1">1</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f086029819366-2">2</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f086029819366-3">3</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f086029819366-4">4</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f086029819366-5">5</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f086029819366-1"><span class="crayon-c"># передадим методу .cdf() границу, среднее значение (loc) и СКО (scale)</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f086029819366-2"><span class="crayon-v">area</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-v">norm</span><span class="crayon-sy">.</span><span class="crayon-e">cdf</span><span class="crayon-sy">(</span><span class="crayon-cn">1.5</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">loc</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-cn">1.5</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">scale</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-cn">0.75</span><span class="crayon-sy">)</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f086029819366-3"><span class="crayon-h"> </span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f086029819366-4"><span class="crayon-c"># на выходе мы получим площадь под кривой</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f086029819366-5"><span class="crayon-v">area</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0002 seconds] --> </div> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51e7f08f177991553" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f08f177991553-1">1</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f08f177991553-1">0.5</div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0000 seconds] --> </div> <p>Посмотрим на результат на графике.</p> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51e7f091000168822" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f091000168822-1">1</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f091000168822-2">2</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f091000168822-3">3</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f091000168822-4">4</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f091000168822-5">5</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f091000168822-6">6</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f091000168822-7">7</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f091000168822-8">8</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f091000168822-9">9</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f091000168822-10">10</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f091000168822-11">11</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f091000168822-12">12</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f091000168822-13">13</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f091000168822-14">14</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f091000168822-15">15</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f091000168822-16">16</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f091000168822-17">17</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f091000168822-18">18</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f091000168822-19">19</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f091000168822-20">20</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f091000168822-21">21</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f091000168822-22">22</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f091000168822-23">23</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f091000168822-24">24</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f091000168822-25">25</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f091000168822-1"><span class="crayon-c"># зададим размер графика</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f091000168822-2"><span class="crayon-v">plt</span><span class="crayon-sy">.</span><span class="crayon-e">figure</span><span class="crayon-sy">(</span><span class="crayon-v">figsize</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-sy">(</span><span class="crayon-cn">10</span><span class="crayon-sy">,</span><span class="crayon-cn">6</span><span class="crayon-sy">)</span><span class="crayon-sy">)</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f091000168822-3"><span class="crayon-h"> </span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f091000168822-4"><span class="crayon-c"># пропишем среднее значение и СКО</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f091000168822-5"><span class="crayon-v">mean</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">std</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-cn">1.5</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-cn">0.75</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f091000168822-6"><span class="crayon-h"> </span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f091000168822-7"><span class="crayon-c"># создадим пространство из 1000 точек в диапазоне +/- трех СКО от среднего значения</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f091000168822-8"><span class="crayon-v">x</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-v">np</span><span class="crayon-sy">.</span><span class="crayon-e">linspace</span><span class="crayon-sy">(</span><span class="crayon-v">mean</span><span class="crayon-h"> </span><span class="crayon-o">-</span><span class="crayon-h"> </span><span class="crayon-cn">3</span><span class="crayon-h"> </span><span class="crayon-o">*</span><span class="crayon-h"> </span><span class="crayon-v">std</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">mean</span><span class="crayon-h"> </span><span class="crayon-o">+</span><span class="crayon-h"> </span><span class="crayon-cn">3</span><span class="crayon-h"> </span><span class="crayon-o">*</span><span class="crayon-h"> </span><span class="crayon-v">std</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-cn">1000</span><span class="crayon-sy">)</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f091000168822-9"><span class="crayon-h"> </span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f091000168822-10"><span class="crayon-c"># рассчитаем зачения по оси y с помощью метода .pdf()</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f091000168822-11"><span class="crayon-c"># т.е. функции плотности вероятности</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f091000168822-12"><span class="crayon-v">f</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-v">norm</span><span class="crayon-sy">.</span><span class="crayon-e">pdf</span><span class="crayon-sy">(</span><span class="crayon-v">x</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">mean</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">std</span><span class="crayon-sy">)</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f091000168822-13"><span class="crayon-h"> </span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f091000168822-14"><span class="crayon-c"># и построим график</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f091000168822-15"><span class="crayon-v">plt</span><span class="crayon-sy">.</span><span class="crayon-e">plot</span><span class="crayon-sy">(</span><span class="crayon-v">x</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">f</span><span class="crayon-sy">)</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f091000168822-16"><span class="crayon-h"> </span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f091000168822-17"><span class="crayon-c"># дополнительно создадим создадим точки на оси x для закрашенной области</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f091000168822-18"><span class="crayon-v">px</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-v">x</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-v">np</span><span class="crayon-sy">.</span><span class="crayon-e">linspace</span><span class="crayon-sy">(</span><span class="crayon-v">mean</span><span class="crayon-h"> </span><span class="crayon-o">-</span><span class="crayon-h"> </span><span class="crayon-cn">3</span><span class="crayon-h"> </span><span class="crayon-o">*</span><span class="crayon-h"> </span><span class="crayon-v">std</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">mean</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-cn">1000</span><span class="crayon-sy">)</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f091000168822-19"><span class="crayon-h"> </span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f091000168822-20"><span class="crayon-c"># и заполним в пределах этих точек по оси x пространство</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f091000168822-21"><span class="crayon-c"># от кривой нормального распределения до оси y = 0</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f091000168822-22"><span class="crayon-v">plt</span><span class="crayon-sy">.</span><span class="crayon-e">fill_between</span><span class="crayon-sy">(</span><span class="crayon-v">px</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">norm</span><span class="crayon-sy">.</span><span class="crayon-e">pdf</span><span class="crayon-sy">(</span><span class="crayon-v">px</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">mean</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">std</span><span class="crayon-sy">)</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">alpha</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-cn">0.3</span><span class="crayon-sy">)</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f091000168822-23"><span class="crayon-h"> </span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f091000168822-24"><span class="crayon-c"># выведем оба графика на экран</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f091000168822-25"><span class="crayon-v">plt</span><span class="crayon-sy">.</span><span class="crayon-e">show</span><span class="crayon-sy">(</span><span class="crayon-sy">)</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0009 seconds] --> </div> <figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="595" height="357" src="https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/binomial-approximation-normal-curve.png" alt="площадь под кривой нормального распределения (нормальное приближение биномиального распределения)" class="wp-image-11601" srcset="https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/binomial-approximation-normal-curve.png 595w, https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/binomial-approximation-normal-curve-300x180.png 300w" sizes="(max-width: 595px) 100vw, 595px" /></figure> <p>Если же нас попросят найти вероятность конкретного значения, например, выпадения двух орлов $P_B (X = 2) $ (то есть площадь одного столбца гистограммы), то при расчете площади под кривой нормального распределения нужен интервал $ P_N (1{,}5 < X < 2{,}5) $. Другими словами мы прибавили по $0{,}5$ с обеих сторон.</p> <figure class="wp-block-image size-full is-resized"><img loading="lazy" decoding="async" width="755" height="513" src="https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/normal_approximation_between.png" alt="поправка на непрерывность распределения 3" class="wp-image-11614" style="width:489px;height:332px" srcset="https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/normal_approximation_between.png 755w, https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/normal_approximation_between-300x204.png 300w, https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/normal_approximation_between-600x408.png 600w" sizes="(max-width: 755px) 100vw, 755px" /></figure> <p>Рассчитаем площадь с помощью Питона.</p> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51e7f092998043597" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f092998043597-1">1</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f092998043597-2">2</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f092998043597-3">3</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f092998043597-4">4</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f092998043597-5">5</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f092998043597-1"><span class="crayon-c"># передадим методу .cdf() границу, среднее значение (loc) и СКО (scale)</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f092998043597-2"><span class="crayon-v">area</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-v">norm</span><span class="crayon-sy">.</span><span class="crayon-e">cdf</span><span class="crayon-sy">(</span><span class="crayon-cn">2.5</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">loc</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-cn">1.5</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">scale</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-cn">0.75</span><span class="crayon-sy">)</span><span class="crayon-h"> </span><span class="crayon-o">-</span><span class="crayon-h"> </span><span class="crayon-v">norm</span><span class="crayon-sy">.</span><span class="crayon-e">cdf</span><span class="crayon-sy">(</span><span class="crayon-cn">1.5</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">loc</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-cn">1.5</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">scale</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-cn">0.75</span><span class="crayon-sy">)</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f092998043597-3"><span class="crayon-h"> </span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f092998043597-4"><span class="crayon-c"># на выходе мы получим площадь под кривой</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f092998043597-5"><span class="crayon-v">area</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0003 seconds] --> </div> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51e7f096882669723" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f096882669723-1">1</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f096882669723-1">0.4087887802741321</div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0000 seconds] --> </div> <p>Напомню, площадь столбца составляет $P_B (X = 2) = \frac{3}{8} = 0{,}375 $, что довольно существенно отличается от площади под кривой. Это связано с тем, что мы взяли слишком маленькое $n$ и условия $np \geq 5$ и $ n(1-p) \geq 5 $ в данном случае не выполняются.</p> <p class="has-background" style="background-color:#ffe8c4">По мере увеличения $n$ поправка на непрерывность распределения становится все менее значимой.</p> <p>Выведем результат на графике.</p> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51e7f097265908514" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f097265908514-1">1</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f097265908514-2">2</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f097265908514-3">3</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f097265908514-4">4</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f097265908514-5">5</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f097265908514-6">6</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f097265908514-7">7</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f097265908514-8">8</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f097265908514-9">9</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f097265908514-10">10</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f097265908514-11">11</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f097265908514-12">12</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f097265908514-13">13</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f097265908514-14">14</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f097265908514-15">15</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f097265908514-16">16</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f097265908514-17">17</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f097265908514-18">18</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f097265908514-19">19</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f097265908514-20">20</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f097265908514-21">21</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f097265908514-22">22</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f097265908514-23">23</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f097265908514-24">24</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f097265908514-25">25</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f097265908514-1"><span class="crayon-c"># зададим размер графика</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f097265908514-2"><span class="crayon-v">plt</span><span class="crayon-sy">.</span><span class="crayon-e">figure</span><span class="crayon-sy">(</span><span class="crayon-v">figsize</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-sy">(</span><span class="crayon-cn">10</span><span class="crayon-sy">,</span><span class="crayon-cn">6</span><span class="crayon-sy">)</span><span class="crayon-sy">)</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f097265908514-3"><span class="crayon-h"> </span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f097265908514-4"><span class="crayon-c"># пропишем среднее значение и СКО</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f097265908514-5"><span class="crayon-v">mean</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">std</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-cn">1.5</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-cn">0.75</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f097265908514-6"><span class="crayon-h"> </span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f097265908514-7"><span class="crayon-c"># создадим пространство из 1000 точек в диапазоне +/- трех СКО от среднего значения</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f097265908514-8"><span class="crayon-v">x</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-v">np</span><span class="crayon-sy">.</span><span class="crayon-e">linspace</span><span class="crayon-sy">(</span><span class="crayon-v">mean</span><span class="crayon-h"> </span><span class="crayon-o">-</span><span class="crayon-h"> </span><span class="crayon-cn">3</span><span class="crayon-h"> </span><span class="crayon-o">*</span><span class="crayon-h"> </span><span class="crayon-v">std</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">mean</span><span class="crayon-h"> </span><span class="crayon-o">+</span><span class="crayon-h"> </span><span class="crayon-cn">3</span><span class="crayon-h"> </span><span class="crayon-o">*</span><span class="crayon-h"> </span><span class="crayon-v">std</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-cn">1000</span><span class="crayon-sy">)</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f097265908514-9"><span class="crayon-h"> </span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f097265908514-10"><span class="crayon-c"># рассчитаем значения по оси y с помощью метода .pdf()</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f097265908514-11"><span class="crayon-c"># т.е. функции плотности вероятности</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f097265908514-12"><span class="crayon-v">f</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-v">norm</span><span class="crayon-sy">.</span><span class="crayon-e">pdf</span><span class="crayon-sy">(</span><span class="crayon-v">x</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">mean</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">std</span><span class="crayon-sy">)</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f097265908514-13"><span class="crayon-h"> </span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f097265908514-14"><span class="crayon-c"># и построим график</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f097265908514-15"><span class="crayon-v">plt</span><span class="crayon-sy">.</span><span class="crayon-e">plot</span><span class="crayon-sy">(</span><span class="crayon-v">x</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">f</span><span class="crayon-sy">)</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f097265908514-16"><span class="crayon-h"> </span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f097265908514-17"><span class="crayon-c"># дополнительно создадим создадим точки на оси x для закрашенной области</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f097265908514-18"><span class="crayon-v">px</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-v">x</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-v">np</span><span class="crayon-sy">.</span><span class="crayon-e">linspace</span><span class="crayon-sy">(</span><span class="crayon-cn">1.5</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-cn">2.5</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-cn">1000</span><span class="crayon-sy">)</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f097265908514-19"><span class="crayon-h"> </span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f097265908514-20"><span class="crayon-c"># и заполним в пределах этих точек по оси x пространство</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f097265908514-21"><span class="crayon-c"># от кривой нормального распределения до оси y = 0</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f097265908514-22"><span class="crayon-v">plt</span><span class="crayon-sy">.</span><span class="crayon-e">fill_between</span><span class="crayon-sy">(</span><span class="crayon-v">px</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">norm</span><span class="crayon-sy">.</span><span class="crayon-e">pdf</span><span class="crayon-sy">(</span><span class="crayon-v">px</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">mean</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">std</span><span class="crayon-sy">)</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">alpha</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-cn">0.3</span><span class="crayon-sy">)</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f097265908514-23"><span class="crayon-h"> </span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f097265908514-24"><span class="crayon-c"># выведем оба графика на экран</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f097265908514-25"><span class="crayon-v">plt</span><span class="crayon-sy">.</span><span class="crayon-e">show</span><span class="crayon-sy">(</span><span class="crayon-sy">)</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0008 seconds] --> </div> <figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="595" height="357" src="https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/binomial-approximation-normal-curve-between-values.png" alt="площадь под кривой нормального распределения (нормальное приближение биномиального распределения) 2" class="wp-image-11605" srcset="https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/binomial-approximation-normal-curve-between-values.png 595w, https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/binomial-approximation-normal-curve-between-values-300x180.png 300w" sizes="(max-width: 595px) 100vw, 595px" /></figure> <h5 class="wp-block-heading" id="24-primer-priblizheniya">Пример приближения</h5> <p>Для закрепления пройденного материала рассмотрим более жизненный пример. Предположим, вам поставили партию из 500 единиц оборудования. При этом вам известно, что в среднем 2% (то есть 0,02) оборудования имеют различные дефекты. Какова вероятность того, что в партии не менее 15 бракованных единиц оборудования?</p> <p>Речь идет о биномиальном распределении, так как мы последовательно достаем из партии одну единицу оборудования, и в ней либо будет дефект, либо нет.</p> <p>$$ B(n, p) = B(500; 0{,}02) \rightarrow P_B(X \geq 15) $$</p> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51e7f099820354716" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f099820354716-1">1</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f099820354716-2">2</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f099820354716-3">3</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f099820354716-4">4</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f099820354716-5">5</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f099820354716-6">6</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f099820354716-7">7</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f099820354716-8">8</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f099820354716-9">9</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f099820354716-10">10</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f099820354716-1"><span class="crayon-c"># импортируем объект binom из модуля stats библиотеки scipy</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f099820354716-2"><span class="crayon-st">from</span><span class="crayon-h"> </span><span class="crayon-v">scipy</span><span class="crayon-sy">.</span><span class="crayon-e">stats </span><span class="crayon-r">import</span><span class="crayon-h"> </span><span class="crayon-i">binom</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f099820354716-3"><span class="crayon-h"> </span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f099820354716-4"><span class="crayon-c"># зададим параметры биномиального распределения</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f099820354716-5"><span class="crayon-v">n</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">p</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-cn">500</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-cn">0.02</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f099820354716-6"><span class="crayon-h"> </span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f099820354716-7"><span class="crayon-c"># метод .cdf() рассчитывает вероятность до значения включительно (!),</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f099820354716-8"><span class="crayon-c"># таким образом, чтобы найти X >= 15,</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f099820354716-9"><span class="crayon-c"># мы берем значения вплоть до 14 и вычитаем результат из единицы</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f099820354716-10"><span class="crayon-cn">1</span><span class="crayon-h"> </span><span class="crayon-o">-</span><span class="crayon-h"> </span><span class="crayon-v">binom</span><span class="crayon-sy">.</span><span class="crayon-e">cdf</span><span class="crayon-sy">(</span><span class="crayon-cn">14</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">n</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">p</span><span class="crayon-sy">)</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0003 seconds] --> </div> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51e7f09d883223558" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f09d883223558-1">1</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f09d883223558-1">0.08135689951684455</div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0000 seconds] --> </div> <p>Теперь решим эту задачу с помощью нормального приближения. По теореме Муавра-Лапласа выводим следующее.</p> <p>$$ B(500; 0{,}02) \sim {\mathcal N}(10; \sqrt{9{,}8}) \rightarrow P_N(X > 14{,}5) $$</p> <p>Таким образом, задача сводится к нахождению площади под кривой с учетом внесенной поправки на непрерывность распределения $(15-0{,}5 = 14{,}5).$</p> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51e7f09e246467919" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f09e246467919-1">1</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f09e246467919-2">2</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f09e246467919-3">3</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f09e246467919-4">4</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f09e246467919-5">5</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f09e246467919-1"><span class="crayon-c"># рассчитаем среднее значение и СКО</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f09e246467919-2"><span class="crayon-v">mean</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">std</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-v">n</span><span class="crayon-h"> </span><span class="crayon-o">*</span><span class="crayon-h"> </span><span class="crayon-v">p</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">np</span><span class="crayon-sy">.</span><span class="crayon-e">sqrt</span><span class="crayon-sy">(</span><span class="crayon-v">n</span><span class="crayon-h"> </span><span class="crayon-o">*</span><span class="crayon-h"> </span><span class="crayon-v">p</span><span class="crayon-h"> </span><span class="crayon-o">*</span><span class="crayon-h"> </span><span class="crayon-sy">(</span><span class="crayon-cn">1</span><span class="crayon-h"> </span><span class="crayon-o">-</span><span class="crayon-h"> </span><span class="crayon-v">p</span><span class="crayon-sy">)</span><span class="crayon-sy">)</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f09e246467919-3"><span class="crayon-h"> </span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f09e246467919-4"><span class="crayon-c"># рассчитаем площадь под кривой слева от границы и вычтем результат из единицы</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f09e246467919-5"><span class="crayon-cn">1</span><span class="crayon-h"> </span><span class="crayon-o">-</span><span class="crayon-h"> </span><span class="crayon-v">norm</span><span class="crayon-sy">.</span><span class="crayon-e">cdf</span><span class="crayon-sy">(</span><span class="crayon-cn">14.5</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">loc</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-v">mean</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">scale</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-v">std</span><span class="crayon-sy">)</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0004 seconds] --> </div> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51e7f09f852623358" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f09f852623358-1">1</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f09f852623358-1">0.07529192313308641</div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0000 seconds] --> </div> <p>Посмотрим, как это выглядит на графике.</p> <div class="wp-block-urvanov-syntax-highlighter-code-block"><!-- Urvanov Syntax Highlighter v2.8.37 --> <div id="urvanov-syntax-highlighter-672da51e7f0a0392122064" class="urvanov-syntax-highlighter-syntax crayon-theme-familiar-my-copy urvanov-syntax-highlighter-font-consolas urvanov-syntax-highlighter-os-pc print-yes notranslate" data-settings=" minimize scroll-always" style=" margin-top: 15px; margin-bottom: 15px; margin-left: 15px; margin-right: 15px; font-size: 16px !important; line-height: 22px !important;"> <div class="urvanov-syntax-highlighter-plain-wrap"></div> <div class="urvanov-syntax-highlighter-main" style=""> <table class="crayon-table"> <tr class="urvanov-syntax-highlighter-row"> <td class="crayon-nums " data-settings="show"> <div class="urvanov-syntax-highlighter-nums-content" style="font-size: 16px !important; line-height: 22px !important;"><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f0a0392122064-1">1</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f0a0392122064-2">2</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f0a0392122064-3">3</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f0a0392122064-4">4</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f0a0392122064-5">5</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f0a0392122064-6">6</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f0a0392122064-7">7</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f0a0392122064-8">8</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f0a0392122064-9">9</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f0a0392122064-10">10</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f0a0392122064-11">11</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f0a0392122064-12">12</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f0a0392122064-13">13</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f0a0392122064-14">14</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f0a0392122064-15">15</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f0a0392122064-16">16</div><div class="crayon-num" data-line="urvanov-syntax-highlighter-672da51e7f0a0392122064-17">17</div><div class="crayon-num crayon-striped-num" data-line="urvanov-syntax-highlighter-672da51e7f0a0392122064-18">18</div></div> </td> <td class="urvanov-syntax-highlighter-code"><div class="crayon-pre" style="font-size: 16px !important; line-height: 22px !important; -moz-tab-size:4; -o-tab-size:4; -webkit-tab-size:4; tab-size:4;"><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f0a0392122064-1"><span class="crayon-c"># зададим размер графика</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f0a0392122064-2"><span class="crayon-v">plt</span><span class="crayon-sy">.</span><span class="crayon-e">figure</span><span class="crayon-sy">(</span><span class="crayon-v">figsize</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-sy">(</span><span class="crayon-cn">10</span><span class="crayon-sy">,</span><span class="crayon-cn">6</span><span class="crayon-sy">)</span><span class="crayon-sy">)</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f0a0392122064-3"><span class="crayon-h"> </span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f0a0392122064-4"><span class="crayon-c"># создадим 1000 точек в +/- 3 СКО от среднего значения</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f0a0392122064-5"><span class="crayon-v">x</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-v">np</span><span class="crayon-sy">.</span><span class="crayon-e">linspace</span><span class="crayon-sy">(</span><span class="crayon-v">mean</span><span class="crayon-h"> </span><span class="crayon-o">-</span><span class="crayon-h"> </span><span class="crayon-cn">3</span><span class="crayon-h"> </span><span class="crayon-o">*</span><span class="crayon-h"> </span><span class="crayon-v">std</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">mean</span><span class="crayon-h"> </span><span class="crayon-o">+</span><span class="crayon-h"> </span><span class="crayon-cn">3</span><span class="crayon-h"> </span><span class="crayon-o">*</span><span class="crayon-h"> </span><span class="crayon-v">std</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-cn">1000</span><span class="crayon-sy">)</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f0a0392122064-6"><span class="crayon-c"># найдем точки на оси y по формуле Гаусса</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f0a0392122064-7"><span class="crayon-v">f_norm</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-v">norm</span><span class="crayon-sy">.</span><span class="crayon-e">pdf</span><span class="crayon-sy">(</span><span class="crayon-v">x</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">mean</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">std</span><span class="crayon-sy">)</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f0a0392122064-8"><span class="crayon-c"># построим график плотности нормального распределения</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f0a0392122064-9"><span class="crayon-v">plt</span><span class="crayon-sy">.</span><span class="crayon-e">plot</span><span class="crayon-sy">(</span><span class="crayon-v">x</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">f_norm</span><span class="crayon-sy">)</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f0a0392122064-10"><span class="crayon-h"> </span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f0a0392122064-11"><span class="crayon-c"># дополнительно создадим точки на оси х для закрашенной области</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f0a0392122064-12"><span class="crayon-v">px</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-v">np</span><span class="crayon-sy">.</span><span class="crayon-e">linspace</span><span class="crayon-sy">(</span><span class="crayon-cn">14.5</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">mean</span><span class="crayon-h"> </span><span class="crayon-o">+</span><span class="crayon-h"> </span><span class="crayon-cn">3</span><span class="crayon-h"> </span><span class="crayon-o">*</span><span class="crayon-h"> </span><span class="crayon-v">std</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-cn">1000</span><span class="crayon-sy">)</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f0a0392122064-13"><span class="crayon-h"> </span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f0a0392122064-14"><span class="crayon-c"># и заполним в пределах этих точек по оси x пространство</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f0a0392122064-15"><span class="crayon-c"># от кривой нормального распределения до оси y = 0</span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f0a0392122064-16"><span class="crayon-v">plt</span><span class="crayon-sy">.</span><span class="crayon-e">fill_between</span><span class="crayon-sy">(</span><span class="crayon-v">px</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">norm</span><span class="crayon-sy">.</span><span class="crayon-e">pdf</span><span class="crayon-sy">(</span><span class="crayon-v">px</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">mean</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">std</span><span class="crayon-sy">)</span><span class="crayon-sy">,</span><span class="crayon-h"> </span><span class="crayon-v">alpha</span><span class="crayon-h"> </span><span class="crayon-o">=</span><span class="crayon-h"> </span><span class="crayon-cn">0.3</span><span class="crayon-sy">)</span></div><div class="crayon-line" id="urvanov-syntax-highlighter-672da51e7f0a0392122064-17"><span class="crayon-h"> </span></div><div class="crayon-line crayon-striped-line" id="urvanov-syntax-highlighter-672da51e7f0a0392122064-18"><span class="crayon-v">plt</span><span class="crayon-sy">.</span><span class="crayon-e">show</span><span class="crayon-sy">(</span><span class="crayon-sy">)</span></div></div></td> </tr> </table> </div> </div> <!-- [Format Time: 0.0008 seconds] --> </div> <figure class="wp-block-image size-full"><img loading="lazy" decoding="async" width="603" height="357" src="https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/area_under_normal_curve_above_14.5.png" alt="нормальное приближение биномиального распределения (пример)" class="wp-image-11649" srcset="https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/area_under_normal_curve_above_14.5.png 603w, https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/area_under_normal_curve_above_14.5-300x178.png 300w, https://www.dmitrymakarov.ru/wp-content/uploads/2022/03/area_under_normal_curve_above_14.5-600x355.png 600w" sizes="(max-width: 603px) 100vw, 603px" /></figure> <h2 class="wp-block-heading" id="25-promezhutochnyy-itog">Промежуточный итог</h2> <p>В таблице ниже обобщим и систематизируем ключевую информацию о распределениях <a href="https://www.dmitrymakarov.ru/python/random-11-02/#4-diskretnoe-veroyatnostnoe-raspredelenie">дискретных</a> и непрерывных случайных величин.</p> <figure class="wp-block-image size-large"><img loading="lazy" decoding="async" width="1024" height="714" src="https://www.dmitrymakarov.ru/wp-content/uploads/2024/05/image-1-1024x714.png" alt="ключевая информация о распределениях дискретных и непрерывных случайных величин" class="wp-image-26612" srcset="https://www.dmitrymakarov.ru/wp-content/uploads/2024/05/image-1-1024x714.png 1024w, https://www.dmitrymakarov.ru/wp-content/uploads/2024/05/image-1-300x209.png 300w, https://www.dmitrymakarov.ru/wp-content/uploads/2024/05/image-1-768x535.png 768w, https://www.dmitrymakarov.ru/wp-content/uploads/2024/05/image-1-1536x1071.png 1536w, https://www.dmitrymakarov.ru/wp-content/uploads/2024/05/image-1-2048x1427.png 2048w, https://www.dmitrymakarov.ru/wp-content/uploads/2024/05/image-1-1200x836.png 1200w, https://www.dmitrymakarov.ru/wp-content/uploads/2024/05/image-1-600x418.png 600w" sizes="(max-width: 1024px) 100vw, 1024px" /></figure> <p>Перейдем к <a href="https://www.dmitrymakarov.ru/python/random-11-04/">комбинаторике</a>.</p> </div> <!-- .content --> </div> <!-- .post --> <footer class="site-footer section-inner"> <!--<p class="copyright">© 2024 <a href="https://www.dmitrymakarov.ru" class="site-name">Машинное обучение</a></p>--> </footer> <!-- footer --> </main> <script type="text/javascript" src="//cdn.jsdelivr.net/npm/mathjax@3/es5/tex-chtml.js?ver=6.6.2" id="mathjax-js"></script> <script type="text/javascript" src="https://www.dmitrymakarov.ru/wp-content/plugins/ultimate-blocks/src/blocks/table-of-contents/front.build.js?ver=3.2.2" id="ultimate_blocks-table-of-contents-front-script-js"></script> <script type="text/javascript" src="https://www.dmitrymakarov.ru/wp-includes/js/imagesloaded.min.js?ver=5.0.0" id="imagesloaded-js"></script> <script type="text/javascript" src="https://www.dmitrymakarov.ru/wp-includes/js/masonry.min.js?ver=4.2.2" id="masonry-js"></script> <script type="text/javascript" id="mcluhan_global-js-extra"> /* <![CDATA[ */ var mcluhan_ajaxpagination = {"ajaxurl":"https:\/\/www.dmitrymakarov.ru\/wp-admin\/admin-ajax.php","query_vars":"{\"page\":\"\",\"pagename\":\"python\\\/random-11-03\"}"}; /* ]]> */ </script> <script type="text/javascript" src="https://www.dmitrymakarov.ru/wp-content/themes/mcluhan/assets/js/global.js?ver=2.1.1" id="mcluhan_global-js"></script> </body> </html>