2499 lines
185 KiB
Plaintext
2499 lines
185 KiB
Plaintext
<!DOCTYPE html>
|
||
|
||
|
||
<html itemscope itemtype="https://schema.org/QAPage" class="html__responsive " lang="en">
|
||
|
||
<head>
|
||
|
||
<title>scipy - How to calculate the inverse of the normal cumulative distribution function in python? - Stack Overflow</title>
|
||
<link rel="shortcut icon" href="https://cdn.sstatic.net/Sites/stackoverflow/Img/favicon.ico?v=ec617d715196">
|
||
<link rel="apple-touch-icon" href="https://cdn.sstatic.net/Sites/stackoverflow/Img/apple-touch-icon.png?v=c78bd457575a">
|
||
<link rel="image_src" href="https://cdn.sstatic.net/Sites/stackoverflow/Img/apple-touch-icon.png?v=c78bd457575a">
|
||
<link rel="search" type="application/opensearchdescription+xml" title="Stack Overflow" href="/opensearch.xml">
|
||
<link rel="canonical" href="https://stackoverflow.com/questions/20626994/how-to-calculate-the-inverse-of-the-normal-cumulative-distribution-function-in-p" />
|
||
<meta name="viewport" content="width=device-width, height=device-height, initial-scale=1.0, minimum-scale=1.0">
|
||
<meta property="og:type" content= "website" />
|
||
<meta property="og:url" content="https://stackoverflow.com/questions/20626994/how-to-calculate-the-inverse-of-the-normal-cumulative-distribution-function-in-p"/>
|
||
<meta property="og:site_name" content="Stack Overflow" />
|
||
<meta property="og:image" itemprop="image primaryImageOfPage" content="https://cdn.sstatic.net/Sites/stackoverflow/Img/apple-touch-icon@2.png?v=73d79a89bded" />
|
||
<meta name="twitter:card" content="summary"/>
|
||
<meta name="twitter:domain" content="stackoverflow.com"/>
|
||
<meta name="twitter:title" property="og:title" itemprop="name" content="How to calculate the inverse of the normal cumulative distribution function in python?" />
|
||
<meta name="twitter:description" property="og:description" itemprop="description" content="How do I calculate the inverse of the cumulative distribution function (CDF) of the normal distribution in Python?

Which library should I use? Possibly scipy?" />
|
||
<script id="webpack-public-path" type="text/uri-list">https://cdn.sstatic.net/</script>
|
||
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.4/jquery.min.js"></script>
|
||
<script defer src="https://cdn.sstatic.net/Js/third-party/npm/@stackoverflow/stacks/dist/js/stacks.min.js?v=d5f780ae3281"></script>
|
||
<script src="https://cdn.sstatic.net/Js/stub.en.js?v=fa8bcab580cd"></script>
|
||
|
||
<link rel="stylesheet" type="text/css" href="https://cdn.sstatic.net/Shared/stacks.css?v=5d83236da4e2">
|
||
<link rel="stylesheet" type="text/css" href="https://cdn.sstatic.net/Sites/stackoverflow/primary.css?v=89d00f6d5eec">
|
||
|
||
|
||
|
||
<link rel="alternate" type="application/atom+xml" title="Feed for question 'How to calculate the inverse of the normal cumulative distribution function in python?'" href="/feeds/question/20626994">
|
||
<script>
|
||
StackExchange.ready(function () {
|
||
|
||
StackExchange.using("snippets", function () {
|
||
StackExchange.snippets.initSnippetRenderer();
|
||
});
|
||
|
||
StackExchange.using("postValidation", function () {
|
||
StackExchange.postValidation.initOnBlurAndSubmit($('#post-form'), 2, 'answer');
|
||
});
|
||
|
||
|
||
StackExchange.question.init({showAnswerHelp:true,showTrendingSortLaunchPopover:false,showTrendingSortPostLaunchPopover:false,totalCommentCount:3,shownCommentCount:3,enableTables:true,questionId:20626994});
|
||
|
||
styleCode();
|
||
|
||
StackExchange.realtime.subscribeToQuestion('1', '20626994');
|
||
StackExchange.using("gps", function () { StackExchange.gps.trackOutboundClicks('#content', '.js-post-body'); });
|
||
|
||
|
||
});
|
||
</script>
|
||
|
||
|
||
|
||
|
||
<link rel="stylesheet" type="text/css" href="https://cdn.sstatic.net/Shared/Channels/channels.css?v=64256d36becc">
|
||
|
||
|
||
|
||
|
||
|
||
<script type="application/json" data-role="module-args" data-module-name="Shared/options.mod">{"options":{"locale":"en","serverTime":1701628364,"routeName":"Questions/Show","stackAuthUrl":"https://stackauth.com","networkMetaHostname":"meta.stackexchange.com","site":{"name":"Stack Overflow","description":"Q\u0026A for professional and enthusiast programmers","isNoticesTabEnabled":true,"enableNewTagCreationWarning":true,"insertSpaceAfterNameTabCompletion":false,"id":1,"cookieDomain":".stackoverflow.com","childUrl":"https://meta.stackoverflow.com","negativeVoteScoreFloor":null,"enableSocialMediaInSharePopup":true,"protocol":"https"},"user":{"fkey":"d8a1f9f0d8241e1b245c6f93920897c7b1457a3e09f1f846dafb3a27efbe14a3","tid":"4be534e2-e122-41ff-bac4-f3c87d9e0ee6","rep":0,"isAnonymous":true,"isAnonymousNetworkWide":true,"ab":{"job_search_status":{"v":"ai_policy_banner_v1","g":1}}},"events":{"postType":{"question":1},"postEditionSection":{"title":1,"body":2,"tags":3}}}}</script>
|
||
<script type="application/json" data-role="module-args" data-module-name="Shared/settings.mod">{"settings":{"userMessaging":{"showNewFeatureNotice":true},"tags":{},"subscriptions":{"defaultBasicMaxTrueUpSeats":250,"defaultFreemiumMaxTrueUpSeats":50,"defaultMaxTrueUpSeats":1000},"snippets":{"renderDomain":"stacksnippets.net","snippetsEnabled":true},"site":{"allowImageUploads":true,"enableImgurHttps":true,"enableUserHovercards":true,"forceHttpsImages":true,"stacksEditorPreviewEnabled":true,"styleCode":true},"search":{},"questions":{"enableQuestionTitleLengthLiveWarning":true,"enableSavesFeature":true,"maxTitleSize":150,"questionTitleLengthStartLiveWarningChars":50},"intercom":{"appId":"inf0secd","enableJavascriptImplementationFor":true,"hostBaseUrl":"https://stacksnippets.net"},"paths":{"jQueryUICSSPath":"https://ajax.googleapis.com/ajax/libs/jqueryui/1.12.0/themes/smoothness/jquery-ui.css","jQueryUIJSPath":"https://ajax.googleapis.com/ajax/libs/jqueryui/1.12.0/jquery-ui.min.js"},"mentions":{"maxNumUsersInDropdown":50},"markdown":{"enableTables":true},"legal":{"oneTrustConfigId":"c3d9f1e3-55f3-4eba-b268-46cee4c6789c"},"flags":{"allowRetractingCommentFlags":true,"allowRetractingFlags":true},"elections":{"opaVoteResultsBaseUrl":"https://www.opavote.com/results/"},"comments":{},"accounts":{"currentPasswordRequiredForChangingStackIdPassword":true}}}</script>
|
||
<script>StackExchange.init();</script>
|
||
|
||
<script>
|
||
StackExchange.using.setCacheBreakers({"Js/adops.en.js":"6da43f5e0a84","Js/ask.en.js":"","Js/begin-edit-event.en.js":"20edbaccceae","Js/copy-transpiled.en.js":"d31dc7eba3bc","Js/events.en.js":"","Js/explore-qlist.en.js":"2b1f34938b8b","Js/full-anon.en.js":"192ecaea0c9d","Js/full.en.js":"efb11489a333","Js/highlightjs-loader.en.js":"510e2f94c2bf","Js/inline-tag-editing.en.js":"3e8cc64ee9d6","Js/keyboard-shortcuts.en.js":"107c2ac31497","Js/markdown-it-loader.en.js":"5818ef89ff9d","Js/mentions-transpiled.en.js":"36b8cabd2c12","Js/moderator.en.js":"bd04c908e875","Js/postCollections-transpiled.en.js":"ea1228154a76","Js/post-validation.en.js":"8fd6c83cea6c","Js/question-editor.en.js":"","Js/review-v2-transpiled.en.js":"7b6b513b5808","Js/revisions.en.js":"47b4d5ac24c9","Js/stacks-editor.en.js":"45ddc00eb16e","Js/tageditor.en.js":"dc13482a67f8","Js/tageditornew.en.js":"b11be3ff22c6","Js/tagsuggestions.en.js":"bd6ec908f2a7","Js/unlimited-transpiled.en.js":"f26a1d5f3365","Js/wmd.en.js":"033a0412fcae","Js/snippet-javascript-codemirror.en.js":"ae1dcf38deb7"});
|
||
StackExchange.using("gps", function() {
|
||
StackExchange.gps.init(false);
|
||
});
|
||
</script>
|
||
<noscript id="noscript-css"><style>body,.s-topbar{margin-top:1.9em}</style></noscript>
|
||
</head>
|
||
<body class="question-page unified-theme">
|
||
<div id="notify-container"></div>
|
||
<div id="custom-header"></div>
|
||
|
||
|
||
<header class="s-topbar ps-fixed t0 l0 js-top-bar">
|
||
<div class="s-topbar--container">
|
||
<a href="#" class="s-topbar--menu-btn js-left-sidebar-toggle" role="menuitem" aria-haspopup="true" aria-controls="left-sidebar" aria-expanded="false"><span></span></a>
|
||
<div class="topbar-dialog leftnav-dialog js-leftnav-dialog dno">
|
||
<div class="left-sidebar js-unpinned-left-sidebar" data-can-be="left-sidebar" data-is-here-when="sm"></div>
|
||
</div>
|
||
<a href="https://stackoverflow.com" class="s-topbar--logo js-gps-track"
|
||
data-gps-track="top_nav.click({is_current:false, location:2, destination:8})">
|
||
<span class="-img _glyph">Stack Overflow</span>
|
||
</a>
|
||
|
||
|
||
|
||
<ol class="s-navigation" role="presentation">
|
||
|
||
<li class="md:d-none">
|
||
<a href="https://stackoverflow.co/" class="s-navigation--item js-gps-track"
|
||
data-gps-track="top_nav.products.click({location:2, destination:7})"
|
||
data-ga="["top navigation","about menu click",null,null,null]">About</a>
|
||
</li>
|
||
|
||
<li>
|
||
<a href="#"
|
||
class="s-navigation--item js-gps-track js-products-menu"
|
||
aria-controls="products-popover"
|
||
data-controller="s-popover"
|
||
data-action="s-popover#toggle"
|
||
data-s-popover-placement="bottom"
|
||
data-s-popover-toggle-class="is-selected"
|
||
data-gps-track="top_nav.products.click({location:2, destination:1})"
|
||
data-ga="["top navigation","products menu click",null,null,null]">
|
||
Products
|
||
</a>
|
||
</li>
|
||
|
||
<li class="md:d-none">
|
||
<a href="https://stackoverflow.co/teams/" class="s-navigation--item js-gps-track"
|
||
data-gps-track="top_nav.products.click({location:2, destination:7})"
|
||
data-ga="["top navigation","learn more - teams",null,null,null]">For Teams</a>
|
||
</li>
|
||
</ol>
|
||
<div class="s-popover ws2 mtn2 p0"
|
||
id="products-popover"
|
||
role="menu"
|
||
aria-hidden="true">
|
||
<div class="s-popover--arrow"></div>
|
||
<ol class="list-reset s-anchors s-anchors__inherit">
|
||
<li class="m6">
|
||
<a href="/questions" class="bar-sm p6 d-block h:bg-black-225 js-gps-track"
|
||
data-gps-track="top_nav.products.click({location:2, destination:2})"
|
||
data-ga="["top navigation","public qa submenu click",null,null,null]">
|
||
<span class="fs-body1 d-block">Stack Overflow</span>
|
||
<span class="fs-caption d-block fc-black-400">Public questions & answers</span>
|
||
</a>
|
||
</li>
|
||
<li class="m6">
|
||
<a href="https://stackoverflow.co/teams/" class="bar-sm p6 d-block h:bg-black-225 js-gps-track"
|
||
data-gps-track="top_nav.products.click({location:2, destination:3})"
|
||
data-ga="["top navigation","teams submenu click",null,null,null]">
|
||
<span class="fs-body1 d-block">Stack Overflow for Teams</span>
|
||
<span class="fs-caption d-block fc-black-400">Where developers & technologists share private knowledge with coworkers</span>
|
||
</a>
|
||
</li>
|
||
<li class="m6">
|
||
<a href="https://stackoverflow.co/talent/" class="bar-sm p6 d-block h:bg-black-225 js-gps-track"
|
||
data-gps-track="top_nav.products.click({location:2, destination:5})"
|
||
data-ga="["top navigation","talent submenu click",null,null,null]">
|
||
<span class="fs-body1 d-block">Talent</span>
|
||
<span class="fs-caption d-block fc-black-400">
|
||
Build your employer brand
|
||
</span>
|
||
</a>
|
||
</li>
|
||
<li class="m6">
|
||
<a href="https://stackoverflow.co/advertising/" class="bar-sm p6 d-block h:bg-black-225 js-gps-track"
|
||
data-gps-track="top_nav.products.click({location:2, destination:6})"
|
||
data-ga="["top navigation","advertising submenu click",null,null,null]">
|
||
<span class="fs-body1 d-block">Advertising</span>
|
||
<span class="fs-caption d-block fc-black-400">Reach developers & technologists worldwide</span>
|
||
</a>
|
||
</li>
|
||
<li class="bt bc-black-200 py6 px6 bbr-md">
|
||
<a href="https://stackoverflow.co/labs/" class="bar-sm p6 d-block h:bg-black-225 js-gps-track"
|
||
data-gps-track="top_nav.products.click({location:2, destination:7})"
|
||
data-ga="["top navigation","labs submenu click",null,null,null]">
|
||
<span class="fs-body1 d-block">Labs</span>
|
||
<span class="fs-caption d-block fc-black-400">The future of collective knowledge sharing</span>
|
||
</a>
|
||
</li>
|
||
<li class="bg-black-100 bt bc-black-200 py6 px6 bbr-md">
|
||
<a href="https://stackoverflow.co/" class="fc-black-400 d-block py6 px6 h:fc-black-600 js-gps-track"
|
||
data-gps-track="top_nav.products.click({location:2, destination:7})"
|
||
data-ga="["top navigation","about submenu click",null,null,null]">About the company</a>
|
||
</li>
|
||
</ol>
|
||
</div>
|
||
|
||
|
||
<form id="search" role="search" action=/search class="s-topbar--searchbar js-searchbar " autocomplete="off">
|
||
<div class="s-topbar--searchbar--input-group">
|
||
<input name="q"
|
||
type="text"
|
||
role="combobox"
|
||
placeholder="Search…"
|
||
value=""
|
||
autocomplete="off"
|
||
maxlength="240"
|
||
class="s-input s-input__search js-search-field "
|
||
aria-label="Search"
|
||
aria-controls="top-search"
|
||
data-controller="s-popover"
|
||
data-action="focus->s-popover#show"
|
||
data-s-popover-placement="bottom-start" />
|
||
<svg aria-hidden="true" class="s-input-icon s-input-icon__search svg-icon iconSearch" width="18" height="18" viewBox="0 0 18 18"><path d="m18 16.5-5.14-5.18h-.35a7 7 0 1 0-1.19 1.19v.35L16.5 18l1.5-1.5ZM12 7A5 5 0 1 1 2 7a5 5 0 0 1 10 0Z"/></svg>
|
||
<div class="s-popover p0 wmx100 wmn4 sm:wmn-initial js-top-search-popover" id="top-search" role="menu">
|
||
<div class="s-popover--arrow"></div>
|
||
<div class="js-spinner p24 d-flex ai-center jc-center d-none">
|
||
<div class="s-spinner s-spinner__sm fc-orange-400">
|
||
<div class="v-visible-sr">Loading…</div>
|
||
</div>
|
||
</div>
|
||
|
||
<span class="v-visible-sr js-screen-reader-info"></span>
|
||
<div class="js-ac-results overflow-y-auto hmx3 d-none"></div>
|
||
|
||
<div class="js-search-hints" aria-describedby="Tips for searching"></div>
|
||
</div>
|
||
</div>
|
||
</form>
|
||
|
||
<nav class="h100 ml-auto overflow-x-auto pr12">
|
||
<ol class="s-topbar--content" role="menubar">
|
||
|
||
|
||
|
||
<li class="js-topbar-dialog-corral" role="presentation">
|
||
|
||
|
||
<div class="topbar-dialog siteSwitcher-dialog dno" role="menu">
|
||
<div class="header fw-wrap">
|
||
<h3 class="flex--item">
|
||
<a href="https://stackoverflow.com">current community</a>
|
||
</h3>
|
||
<div class="flex--item fl1">
|
||
<div class="ai-center d-flex jc-end">
|
||
<button
|
||
class="js-close-button s-btn s-btn__muted p0 ml8 d-none sm:d-block"
|
||
type="button"
|
||
aria-label="Close"
|
||
>
|
||
<svg aria-hidden="true" class="svg-icon iconClear" width="18" height="18" viewBox="0 0 18 18"><path d="M15 4.41 13.59 3 9 7.59 4.41 3 3 4.41 7.59 9 3 13.59 4.41 15 9 10.41 13.59 15 15 13.59 10.41 9 15 4.41Z"/></svg>
|
||
</button>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<div class="modal-content bg-blue-200 current-site-container">
|
||
<ul class="current-site ">
|
||
<li class="d-flex">
|
||
<div class="fl1">
|
||
<a href="https://stackoverflow.com"
|
||
class="current-site-link site-link js-gps-track d-flex gs8 gsx"
|
||
data-id="1"
|
||
data-gps-track="site_switcher.click({ item_type:3 })">
|
||
<div class="favicon favicon-stackoverflow site-icon flex--item" title="Stack Overflow"></div>
|
||
<span class="flex--item fl1">
|
||
Stack Overflow
|
||
</span>
|
||
</a>
|
||
|
||
</div>
|
||
<div class="related-links">
|
||
<a href="https://stackoverflow.com/help" class="js-gps-track" data-gps-track="site_switcher.click({ item_type:14 })">help</a>
|
||
<a href="https://chat.stackoverflow.com/?tab=site&host=stackoverflow.com" class="js-gps-track" data-gps-track="site_switcher.click({ item_type:6 })">chat</a>
|
||
</div>
|
||
|
||
</li>
|
||
<li class="related-site d-flex">
|
||
<div class="L-shaped-icon-container">
|
||
<span class="L-shaped-icon"></span>
|
||
</div>
|
||
|
||
<a href="https://meta.stackoverflow.com"
|
||
class=" site-link js-gps-track d-flex gs8 gsx"
|
||
data-id="552"
|
||
data-gps-track="site.switch({ target_site:552, item_type:3 }),site_switcher.click({ item_type:4 })">
|
||
<div class="favicon favicon-stackoverflowmeta site-icon flex--item" title="Meta Stack Overflow"></div>
|
||
<span class="flex--item fl1">
|
||
Meta Stack Overflow
|
||
</span>
|
||
</a>
|
||
|
||
</li>
|
||
</ul>
|
||
</div>
|
||
|
||
<div class="header" id="your-communities-header">
|
||
<h3>
|
||
your communities </h3>
|
||
|
||
</div>
|
||
<div class="modal-content" id="your-communities-section">
|
||
|
||
<div class="call-to-login">
|
||
<a href="https://stackoverflow.com/users/signup?ssrc=site_switcher&returnurl=https%3a%2f%2fstackoverflow.com%2fquestions%2f20626994%2fhow-to-calculate-the-inverse-of-the-normal-cumulative-distribution-function-in-p" class="login-link js-gps-track" data-gps-track="site_switcher.click({ item_type:10 })">Sign up</a> or <a href="https://stackoverflow.com/users/login?ssrc=site_switcher&returnurl=https%3a%2f%2fstackoverflow.com%2fquestions%2f20626994%2fhow-to-calculate-the-inverse-of-the-normal-cumulative-distribution-function-in-p" class="login-link js-gps-track" data-gps-track="site_switcher.click({ item_type:11 })">log in</a> to customize your list. </div>
|
||
</div>
|
||
|
||
<div class="header">
|
||
<h3><a href="https://stackexchange.com/sites">more stack exchange communities</a>
|
||
</h3>
|
||
<a href="https://stackoverflow.blog" class="float-right">company blog</a>
|
||
</div>
|
||
<div class="modal-content">
|
||
<div class="child-content"></div>
|
||
</div>
|
||
</div>
|
||
|
||
</li>
|
||
|
||
<li role="none"><button class="s-topbar--item s-btn s-btn__icon s-btn__muted d-none sm:d-inline-flex js-searchbar-trigger" role="menuitem" aria-label="Search" aria-haspopup="true" aria-controls="search" title="Click to show search"><svg aria-hidden="true" class="svg-icon iconSearch" width="18" height="18" viewBox="0 0 18 18"><path d="m18 16.5-5.14-5.18h-.35a7 7 0 1 0-1.19 1.19v.35L16.5 18l1.5-1.5ZM12 7A5 5 0 1 1 2 7a5 5 0 0 1 10 0Z"/></svg></button></li>
|
||
<li role="none">
|
||
<a href="https://stackoverflow.com/users/login?ssrc=head&returnurl=https%3a%2f%2fstackoverflow.com%2fquestions%2f20626994%2fhow-to-calculate-the-inverse-of-the-normal-cumulative-distribution-function-in-p" class="s-topbar--item s-topbar--item__unset s-btn s-btn__outlined ws-nowrap js-gps-track" role="menuitem" rel="nofollow"
|
||
data-gps-track="login.click" data-ga="["top navigation","login button click",null,null,null]">Log in</a>
|
||
</li>
|
||
<li role="none"><a href="https://stackoverflow.com/users/signup?ssrc=head&returnurl=https%3a%2f%2fstackoverflow.com%2fquestions%2f20626994%2fhow-to-calculate-the-inverse-of-the-normal-cumulative-distribution-function-in-p" class="s-topbar--item s-topbar--item__unset ml4 s-btn s-btn__filled ws-nowrap" role="menuitem" rel="nofollow" data-ga="["sign up","Sign Up Navigation","Header",null,null]">Sign up</a></li>
|
||
</ol>
|
||
</nav>
|
||
|
||
|
||
</div>
|
||
</header>
|
||
|
||
<script>
|
||
StackExchange.ready(function () { StackExchange.topbar.init(); });
|
||
StackExchange.scrollPadding.setPaddingTop(50, 10);
|
||
</script>
|
||
|
||
|
||
|
||
|
||
|
||
<div class="container">
|
||
|
||
|
||
<div id="left-sidebar" data-is-here-when="md lg" class="left-sidebar js-pinned-left-sidebar ps-relative">
|
||
<div class="left-sidebar--sticky-container js-sticky-leftnav">
|
||
<nav role="navigation">
|
||
<ol class="nav-links">
|
||
<li>
|
||
<ol class="nav-links">
|
||
|
||
|
||
<li class="ps-relative" aria-current="false">
|
||
|
||
|
||
<a
|
||
href="/"
|
||
class="pl8 js-gps-track nav-links--link -link__with-icon"
|
||
|
||
data-gps-track="top_nav.click({is_current: false, location:2, destination:8, has_activity_notification:False})"
|
||
aria-controls="" data-controller="" data-s-popover-placement="right"
|
||
aria-current="false"
|
||
data-s-popover-auto-show="true" data-s-popover-hide-on-outside-click="never"
|
||
>
|
||
<svg aria-hidden="true" class="svg-icon iconHome" width="18" height="18" viewBox="0 0 18 18"><path d="M15 10v5a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-5H0l9-9 9 9h-3Zm-8 1v6h4v-6H7Z"/></svg> <span class="-link--channel-name pl6">Home</span>
|
||
</a>
|
||
</li>
|
||
|
||
|
||
|
||
|
||
<li class="ps-relative youarehere" aria-current="true">
|
||
|
||
|
||
<a id="nav-questions"
|
||
href="/questions"
|
||
class="pl8 js-gps-track nav-links--link -link__with-icon"
|
||
|
||
data-gps-track="top_nav.click({is_current: true, location:2, destination:1, has_activity_notification:False})"
|
||
aria-controls="" data-controller="" data-s-popover-placement="right"
|
||
aria-current="false"
|
||
data-s-popover-auto-show="true" data-s-popover-hide-on-outside-click="never"
|
||
>
|
||
<svg aria-hidden="true" class="svg-icon iconQuestion" width="18" height="18" viewBox="0 0 18 18"><path d="m4 15-3 3V4c0-1.1.9-2 2-2h12c1.09 0 2 .91 2 2v9c0 1.09-.91 2-2 2H4Zm7.75-3.97c.72-.83.98-1.86.98-2.94 0-1.65-.7-3.22-2.3-3.83a4.41 4.41 0 0 0-3.02 0 3.8 3.8 0 0 0-2.32 3.83c0 1.29.35 2.29 1.03 3a3.8 3.8 0 0 0 2.85 1.07c.62 0 1.2-.11 1.71-.34.65.44 1 .68 1.06.7.23.13.46.23.7.3l.59-1.13a5.2 5.2 0 0 1-1.28-.66Zm-1.27-.9a5.4 5.4 0 0 0-1.5-.8l-.45.9c.33.12.66.29.98.5-.2.07-.42.11-.65.11-.61 0-1.12-.23-1.52-.68-.86-1-.86-3.12 0-4.11.8-.9 2.35-.9 3.15 0 .9 1.01.86 3.03-.01 4.08Z"/></svg> <span class="-link--channel-name pl6">Questions</span>
|
||
</a>
|
||
</li>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<li class="ps-relative" aria-current="false">
|
||
|
||
|
||
<a
|
||
href="/tags"
|
||
class="pl8 js-gps-track nav-links--link -link__with-icon"
|
||
|
||
data-gps-track="top_nav.click({is_current: false, location:2, destination:2, has_activity_notification:False})"
|
||
aria-controls="" data-controller="" data-s-popover-placement="right"
|
||
aria-current="false"
|
||
data-s-popover-auto-show="true" data-s-popover-hide-on-outside-click="never"
|
||
>
|
||
<svg aria-hidden="true" class="svg-icon iconTags" width="18" height="18" viewBox="0 0 18 18"><path d="M9.24 1a3 3 0 0 0-2.12.88l-5.7 5.7a2 2 0 0 0-.38 2.31 3 3 0 0 1 .67-1.01l6-6A3 3 0 0 1 9.83 2H14a3 3 0 0 1 .79.1A2 2 0 0 0 13 1H9.24Z" opacity=".4"/><path d="M9.83 3a2 2 0 0 0-1.42.59l-6 6a2 2 0 0 0 0 2.82L6.6 16.6a2 2 0 0 0 2.82 0l6-6A2 2 0 0 0 16 9.17V5a2 2 0 0 0-2-2H9.83ZM12 9a2 2 0 1 1 0-4 2 2 0 0 1 0 4Z"/></svg> <span class="-link--channel-name pl6">Tags</span>
|
||
</a>
|
||
</li>
|
||
|
||
|
||
<li class="pb24"></li>
|
||
|
||
|
||
|
||
|
||
<li class="ps-relative" aria-current="false">
|
||
|
||
|
||
<a id="nav-users"
|
||
href="/users"
|
||
class="pl8 js-gps-track nav-links--link -link__with-icon"
|
||
|
||
data-gps-track="top_nav.click({is_current: false, location:2, destination:3, has_activity_notification:False})"
|
||
aria-controls="" data-controller="" data-s-popover-placement="right"
|
||
aria-current="false"
|
||
data-s-popover-auto-show="true" data-s-popover-hide-on-outside-click="never"
|
||
>
|
||
<svg aria-hidden="true" class="svg-icon iconPeople" width="18" height="18" viewBox="0 0 18 18"><path d="M17 14c0 .44-.45 1-1 1H9a1 1 0 0 1-1-1H2c-.54 0-1-.56-1-1 0-2.63 3-4 3-4s.23-.4 0-1c-.84-.62-1.06-.59-1-3 .06-2.42 1.37-3 2.5-3s2.44.58 2.5 3c.06 2.41-.16 2.38-1 3-.23.59 0 1 0 1s1.55.71 2.42 2.09c.78-.72 1.58-1.1 1.58-1.1s.23-.4 0-1c-.84-.61-1.06-.58-1-3 .06-2.41 1.37-3 2.5-3s2.44.59 2.5 3c.05 2.42-.16 2.39-1 3-.23.6 0 1 0 1s3 1.38 3 4Z"/></svg> <span class="-link--channel-name pl6">Users</span>
|
||
</a>
|
||
</li>
|
||
|
||
|
||
|
||
|
||
<li class="ps-relative" aria-current="false">
|
||
|
||
|
||
<a id="nav-companies"
|
||
href="https://stackoverflow.com/jobs/companies?so_medium=stackoverflow&so_source=SiteNav"
|
||
class="pl8 js-gps-track nav-links--link -link__with-icon"
|
||
|
||
data-gps-track="top_nav.click({is_current: false, location:2, destination:12, has_activity_notification:False})"
|
||
aria-controls="" data-controller="" data-s-popover-placement="right"
|
||
aria-current="false"
|
||
data-s-popover-auto-show="true" data-s-popover-hide-on-outside-click="never"
|
||
>
|
||
<svg aria-hidden="true" class="svg-icon iconBriefcase" width="18" height="18" viewBox="0 0 18 18"><path d="M5 4a1 1 0 0 1 1-1h6a1 1 0 0 1 1 1v1h1a2 2 0 0 1 2 2v6a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V7c0-1.1.9-2 2-2h1V4Zm7 0H6v1h6V4Z"/></svg> <span class="-link--channel-name pl6">Companies</span>
|
||
</a>
|
||
</li>
|
||
|
||
|
||
|
||
<li class="ml8 mt32 mb8">
|
||
<div class="d-flex jc-space-between ai-center">
|
||
<a
|
||
class="s-link d-flex fl-grow1 fc-black-400 h:fc-black-600 fs-fine js-collectives-navcta-toggle"
|
||
href="javascript:void(0)"
|
||
role="button"
|
||
aria-controls="popover-discover-collectives"
|
||
data-controller="s-popover"
|
||
data-action="s-popover#toggle"
|
||
data-s-popover-placement="top"
|
||
data-s-popover-toggle-class="is-selected"
|
||
data-gps-track="top_nav.click({is_current:false, location:2, destination:17})"
|
||
>
|
||
<div class="flex--item fl-grow1 tt-uppercase fc-black-600 fw-bold">Collectives</div>
|
||
<div class="flex--item px12">
|
||
<svg aria-hidden="true" class="svg-icon iconPlusSm" width="14" height="14" viewBox="0 0 14 14"><path d="M8 2H6v4H2v2h4v4h2V8h4V6H8V2Z"/></svg> </div>
|
||
</a>
|
||
|
||
</div>
|
||
|
||
</li>
|
||
|
||
|
||
<li class="ps-relative" aria-current="false">
|
||
|
||
|
||
<a id="nav-collective-discover"
|
||
href="/collectives"
|
||
class="pl8 ai-center js-collectives-navcta-toggle js-gps-track nav-links--link -link__with-icon"
|
||
|
||
data-gps-track="top_nav.click({is_current: false, location:2, destination:18, has_activity_notification:False})"
|
||
aria-controls="" data-controller="" data-s-popover-placement="right"
|
||
aria-current="false"
|
||
data-s-popover-auto-show="true" data-s-popover-hide-on-outside-click="never"
|
||
>
|
||
<svg aria-hidden="true" class="mt-auto fc-orange-400 svg-icon iconStarVerified" width="18" height="18" viewBox="0 0 18 18"><path d="M9.86.89a1.14 1.14 0 0 0-1.72 0l-.5.58c-.3.35-.79.48-1.23.33l-.72-.25a1.14 1.14 0 0 0-1.49.85l-.14.76c-.1.45-.45.8-.9.9l-.76.14c-.67.14-1.08.83-.85 1.49l.25.72c.15.44.02.92-.33 1.23l-.58.5a1.14 1.14 0 0 0 0 1.72l.58.5c.35.3.48.79.33 1.23l-.25.72c-.23.66.18 1.35.85 1.49l.76.14c.45.1.8.45.9.9l.14.76c.14.67.83 1.08 1.49.85l.72-.25c.44-.15.92-.02 1.23.33l.5.58c.46.52 1.26.52 1.72 0l.5-.58c.3-.35.79-.48 1.23-.33l.72.25c.66.23 1.35-.18 1.49-.85l.14-.76c.1-.45.45-.8.9-.9l.76-.14c.67-.14 1.08-.83.85-1.49l-.25-.72c-.15-.44-.02-.92.33-1.23l.58-.5c.52-.46.52-1.26 0-1.72l-.58-.5c-.35-.3-.48-.79-.33-1.23l.25-.72a1.14 1.14 0 0 0-.85-1.49l-.76-.14c-.45-.1-.8-.45-.9-.9l-.14-.76a1.14 1.14 0 0 0-1.49-.85l-.72.25c-.44.15-.92.02-1.23-.33l-.5-.58Zm-.49 2.67L10.6 6.6c.05.15.19.24.34.25l3.26.22c.36.03.5.48.23.71l-2.5 2.1a.4.4 0 0 0-.14.4l.8 3.16a.4.4 0 0 1-.6.44L9.2 12.13a.4.4 0 0 0-.42 0l-2.77 1.74a.4.4 0 0 1-.6-.44l.8-3.16a.4.4 0 0 0-.13-.4l-2.5-2.1a.4.4 0 0 1 .22-.7l3.26-.23a.4.4 0 0 0 .34-.25l1.22-3.03a.4.4 0 0 1 .74 0Z"/></svg> <span class="-link--channel-name pl6">Explore Collectives</span>
|
||
</a>
|
||
</li>
|
||
|
||
|
||
<li class="ml8 mt32 mb8">
|
||
<a href="javascript:void(0)"
|
||
class="s-link s-link d-flex fl-grow1 fc-black-400 h:fc-black-600 fs-fine"
|
||
role="button"
|
||
aria-controls="popover-labs-left-nav"
|
||
data-controller="s-popover"
|
||
data-action="s-popover#toggle"
|
||
data-s-popover-placement="top"
|
||
data-s-popover-toggle-class="is-selected"
|
||
>
|
||
<div class="flex--item fl-grow1 tt-uppercase fc-black-600 fw-bold">Labs</div>
|
||
<div class="flex--item px12">
|
||
<svg aria-hidden="true" class="svg-icon iconInfoSm" width="14" height="14" viewBox="0 0 14 14"><path d="M7 1a6 6 0 1 1 0 12A6 6 0 0 1 7 1Zm1 10V6H6v5h2Zm0-6V3H6v2h2Z"/></svg>
|
||
</div>
|
||
</a>
|
||
</li>
|
||
|
||
|
||
<li class="ps-relative" aria-current="false">
|
||
|
||
|
||
<a id="nav-labs-discussions"
|
||
href="/collectives/beta/discussions"
|
||
class="pl8 ai-center js-gps-track nav-links--link -link__with-icon"
|
||
|
||
data-gps-track="top_nav.click({is_current: false, location:2, destination:24, has_activity_notification:False})"
|
||
aria-controls="" data-controller="" data-s-popover-placement="right"
|
||
aria-current="false"
|
||
data-s-popover-auto-show="true" data-s-popover-hide-on-outside-click="never"
|
||
>
|
||
<svg aria-hidden="true" class="fc-black-400 w16 svg-icon iconSpeechBubble" width="18" height="18" viewBox="0 0 18 18"><path d="m4 15-3 3V4c0-1.1.9-2 2-2h12a2 2 0 0 1 2 2v9a2 2 0 0 1-2 2H4Z"/></svg> <span class="-link--channel-name pl6">Discussions</span>
|
||
</a>
|
||
</li>
|
||
|
||
</ol>
|
||
</li>
|
||
|
||
|
||
|
||
|
||
|
||
<li class="js-freemium-cta ps-relative">
|
||
|
||
<div class="fs-fine tt-uppercase fc-black-600 fw-bold ml8 mt16 mb8">Teams</div>
|
||
|
||
<div class="bt bl bb bc-black-200 p12 pb6 fc-black-500 blr-sm overflow-hidden">
|
||
<strong class="fc-black-600 mb6">Stack Overflow for Teams</strong>
|
||
– Start collaborating and sharing organizational knowledge.
|
||
|
||
<img class="wmx100 mx-auto my8 h-auto d-block" width="139" height="114" src="https://cdn.sstatic.net/Img/teams/teams-illo-free-sidebar-promo.svg?v=47faa659a05e" alt="">
|
||
|
||
<a href="https://try.stackoverflow.co/why-teams/?utm_source=so-owned&utm_medium=side-bar&utm_campaign=campaign-38&utm_content=cta"
|
||
class="w100 s-btn s-btn__filled s-btn__xs bg-orange-400 js-gps-track"
|
||
data-gps-track="teams.create.left-sidenav.click({ Action: 6 })"
|
||
data-ga="["teams left navigation - anonymous","left nav free cta","stackoverflow.com/teams/create/free",null,null]">Create a free Team</a>
|
||
<a href="https://stackoverflow.co/teams/"
|
||
class="w100 s-btn s-btn__muted s-btn__xs js-gps-track"
|
||
data-gps-track="teams.create.left-sidenav.click({ Action: 5 })"
|
||
data-ga="["teams left navigation - anonymous","left nav free cta","stackoverflow.com/teams",null,null]">Why Teams?</a>
|
||
|
||
</div>
|
||
</li>
|
||
|
||
|
||
<li class="d-flex ai-center jc-space-between ml8 mt32 mb8 js-create-team-cta d-none">
|
||
<a href="javascript:void(0)"
|
||
class="s-link d-flex fl-grow1 fc-black-400 h:fc-black-600 fs-fine js-gps-track"
|
||
role="button"
|
||
aria-controls="popover-teams-create-cta"
|
||
data-controller="s-popover"
|
||
data-action="s-popover#toggle"
|
||
data-s-popover-placement="bottom-start"
|
||
data-s-popover-toggle-class="is-selected"
|
||
data-gps-track="teams.create.left-sidenav.click({ Action: ShowInfo })"
|
||
data-ga="["teams left navigation - anonymous","left nav show teams info",null,null,null]"
|
||
>
|
||
<div class="flex--item fl-grow1 fc-black-600 fw-bold tt-uppercase">Teams</div>
|
||
<div class="flex--item px12">
|
||
<svg aria-hidden="true" class="svg-icon iconPlusSm" width="14" height="14" viewBox="0 0 14 14"><path d="M8 2H6v4H2v2h4v4h2V8h4V6H8V2Z"/></svg>
|
||
</div>
|
||
</a>
|
||
</li>
|
||
<li class="ps-relative js-create-team-cta d-none">
|
||
<a href="https://stackoverflowteams.com/teams/create/free/?utm_source=so-owned&utm_medium=side-bar&utm_campaign=campaign-38&utm_content=cta"
|
||
class="pl8 js-gps-track nav-links--link"
|
||
title="Stack Overflow for Teams is a private, secure spot for your organization's questions and answers."
|
||
data-gps-track="teams.create.left-sidenav.click({ Action: FreemiumTeamsCreateClick })"
|
||
data-ga="["teams left navigation - anonymous","left nav team click","stackoverflow.com/teams/create/free",null,null]">
|
||
<div class="d-flex ai-center">
|
||
<div class="flex--item s-avatar va-middle bg-orange-400">
|
||
<div class="s-avatar--letter mtn1">
|
||
<svg aria-hidden="true" class="svg-icon iconBriefcaseSm" width="14" height="14" viewBox="0 0 14 14"><path d="M4 3a1 1 0 0 1 1-1h4a1 1 0 0 1 1 1v1h.5c.83 0 1.5.67 1.5 1.5v5c0 .83-.67 1.5-1.5 1.5h-7A1.5 1.5 0 0 1 2 10.5v-5C2 4.67 2.67 4 3.5 4H4V3Zm5 1V3H5v1h4Z"/></svg>
|
||
</div>
|
||
<svg aria-hidden="true" class="native s-avatar--badge svg-icon iconShieldXSm" width="9" height="10" viewBox="0 0 9 10"><path fill="var(--white)" d="M0 1.84 4.5 0 9 1.84v3.17C9 7.53 6.3 10 4.5 10 2.7 10 0 7.53 0 5.01V1.84Z"/><path fill="var(--black-400)" d="M1 2.5 4.5 1 8 2.5v2.51C8 7.34 5.34 9 4.5 9 3.65 9 1 7.34 1 5.01V2.5Zm2.98 3.02L3.2 7h2.6l-.78-1.48a.4.4 0 0 1 .15-.38c.34-.24.73-.7.73-1.14 0-.71-.5-1.23-1.41-1.23-.92 0-1.39.52-1.39 1.23 0 .44.4.9.73 1.14.12.08.18.23.15.38Z"/></svg>
|
||
</div>
|
||
<div class="flex--item pl6">
|
||
Create free Team
|
||
</div>
|
||
</div>
|
||
</a>
|
||
</li>
|
||
|
||
</ol>
|
||
</nav>
|
||
</div>
|
||
|
||
|
||
<div class="s-popover ws2" id="popover-discover-collectives" role="menu">
|
||
<div class="s-popover--arrow"></div>
|
||
<div>
|
||
<svg aria-hidden="true" class="fc-orange-400 float-right ml24 svg-spot spotCollective" width="48" height="48" viewBox="0 0 48 48"><path d="M25.5 7a2.5 2.5 0 1 0 0-5 2.5 2.5 0 0 0 0 5ZM14 18.25c0-.69.56-1.25 1.25-1.25h22.5c.69 0 1.25.56 1.25 1.25V37.5a1 1 0 0 1-1.6.8l-4.07-3.05a1.25 1.25 0 0 0-.75-.25H15.25c-.69 0-1.25-.56-1.25-1.25v-15.5ZM7 24.5a2.5 2.5 0 1 1-5 0 2.5 2.5 0 0 1 5 0ZM25.5 48a2.5 2.5 0 1 0 0-5 2.5 2.5 0 0 0 0 5ZM48 24.5a2.5 2.5 0 1 1-5 0 2.5 2.5 0 0 1 5 0Z" opacity=".2"/><path d="M21 3.5a3.5 3.5 0 1 1 7 0 3.5 3.5 0 0 1-7 0ZM24.5 2a1.5 1.5 0 1 0 0 3 1.5 1.5 0 0 0 0-3ZM0 23.5a3.5 3.5 0 1 1 7 0 3.5 3.5 0 0 1-7 0ZM3.5 22a1.5 1.5 0 1 0 0 3 1.5 1.5 0 0 0 0-3ZM21 44.5a3.5 3.5 0 1 1 7 0 3.5 3.5 0 0 1-7 0Zm3.5-1.5a1.5 1.5 0 1 0 0 3 1.5 1.5 0 0 0 0-3Zm20-23a3.5 3.5 0 1 0 0 7 3.5 3.5 0 0 0 0-7ZM43 23.5a1.5 1.5 0 1 1 3 0 1.5 1.5 0 0 1-3 0Zm-23.23-3.14a1 1 0 0 1-.13 1.4l-2.08 1.74 2.08 1.73a1 1 0 1 1-1.28 1.54l-2.42-2.02a1.63 1.63 0 0 1 0-2.5l2.42-2.02a1 1 0 0 1 1.4.13Zm7.59 1.41a1 1 0 1 1 1.28-1.54l2.42 2.02c.78.65.78 1.85 0 2.5l-2.42 2.02a1 1 0 1 1-1.28-1.54l2.08-1.73-2.08-1.73ZM24.12 18a1 1 0 0 1 .87 1.12l-1 8a1 1 0 1 1-1.98-.24l1-8a1 1 0 0 1 1.11-.87Zm-11.87-5C11.01 13 10 14 10 15.25v15.5c0 1.24 1 2.25 2.25 2.25h17.33c.06 0 .11.02.15.05l4.07 3.05a2 2 0 0 0 3.2-1.6V15.25c0-1.24-1-2.25-2.25-2.25h-22.5ZM12 15.25c0-.14.11-.25.25-.25h22.5c.14 0 .25.11.25.25V34.5l-4.07-3.05a2.2 2.2 0 0 0-1.35-.45H12.25a.25.25 0 0 1-.25-.25v-15.5Zm7.24-10.68a1 1 0 1 0-.48-1.94A22.04 22.04 0 0 0 2.91 17.7a1 1 0 1 0 1.92.58 20.04 20.04 0 0 1 14.4-13.72Zm11.05-1.66a1 1 0 0 0-.58 1.92c6.45 1.92 11.54 7 13.46 13.46a1 1 0 1 0 1.92-.58 22.05 22.05 0 0 0-14.8-14.8ZM4.57 28.76a1 1 0 0 0-1.94.48 22.03 22.03 0 0 0 16.13 16.13 1 1 0 1 0 .48-1.94A20.03 20.03 0 0 1 4.57 28.76Zm40.8.48a1 1 0 1 0-1.94-.48 20.04 20.04 0 0 1-13.72 14.41 1 1 0 0 0 .58 1.92 22.04 22.04 0 0 0 15.08-15.85Z"/></svg>
|
||
<h5 class="pt4 fw-bold">Collectives™ on Stack Overflow</h5>
|
||
<p class="my16 fs-caption fc-black-500">Find centralized, trusted content and collaborate around the technologies you use most.</p>
|
||
<a href="/collectives"
|
||
class="js-gps-track s-btn s-btn__filled s-btn__xs"
|
||
data-gps-track="top_nav.click({is_current:false, location:2, destination:18})">
|
||
Learn more about Collectives
|
||
</a>
|
||
</div>
|
||
</div>
|
||
|
||
<div class="s-popover ws2"
|
||
id="popover-teams-create-cta"
|
||
role="menu"
|
||
aria-hidden="true">
|
||
<div class="s-popover--arrow"></div>
|
||
|
||
<div class="ps-relative overflow-hidden">
|
||
<p class="mb2"><strong>Teams</strong></p>
|
||
<p class="mb12 fs-caption fc-black-400">Q&A for work</p>
|
||
<p class="mb12 fs-caption fc-black-500">Connect and share knowledge within a single location that is structured and easy to search.</p>
|
||
<a href="https://stackoverflow.co/teams/"
|
||
class="js-gps-track s-btn s-btn__filled s-btn__xs"
|
||
data-gps-track="teams.create.left-sidenav.click({ Action: CtaClick })"
|
||
data-ga="["teams left navigation - anonymous","left nav cta","stackoverflow.com/teams",null,null]">
|
||
Learn more about Teams
|
||
</a>
|
||
</div>
|
||
|
||
<div class="ps-absolute t8 r8">
|
||
<svg aria-hidden="true" class="fc-orange-400 svg-spot spotPeople" width="48" height="48" viewBox="0 0 48 48"><path d="M13.5 28a4.5 4.5 0 1 0 0-9 4.5 4.5 0 0 0 0 9ZM7 30a1 1 0 0 1 1-1h11a1 1 0 0 1 1 1v5h11v-5a1 1 0 0 1 1-1h12a1 1 0 0 1 1 1v10a2 2 0 0 1-2 2H33v5a1 1 0 0 1-1 1H20a1 1 0 0 1-1-1v-5H8a1 1 0 0 1-1-1V30Zm25-6.5a4.5 4.5 0 1 0 9 0 4.5 4.5 0 0 0-9 0ZM24.5 34a4.5 4.5 0 1 0 0-9 4.5 4.5 0 0 0 0 9Z" opacity=".2"/><path d="M16.4 26.08A6 6 0 1 0 7.53 26C5.64 26.06 4 27.52 4 29.45V40a1 1 0 0 0 1 1h9a1 1 0 1 0 0-2h-4v-7a1 1 0 1 0-2 0v7H6v-9.55c0-.73.67-1.45 1.64-1.45H16a1 1 0 0 0 .4-1.92ZM12 18a4 4 0 1 1 0 8 4 4 0 0 1 0-8Zm16.47 14a6 6 0 1 0-8.94 0A3.6 3.6 0 0 0 16 35.5V46a1 1 0 0 0 1 1h14a1 1 0 0 0 1-1V35.5c0-1.94-1.64-3.42-3.53-3.5ZM20 28a4 4 0 1 1 8 0 4 4 0 0 1-8 0Zm-.3 6h8.6c1 0 1.7.75 1.7 1.5V45h-2v-7a1 1 0 1 0-2 0v7h-4v-7a1 1 0 1 0-2 0v7h-2v-9.5c0-.75.7-1.5 1.7-1.5ZM42 22c0 1.54-.58 2.94-1.53 4A3.5 3.5 0 0 1 44 29.45V40a1 1 0 0 1-1 1h-9a1 1 0 1 1 0-2h4v-7a1 1 0 1 1 2 0v7h2v-9.55A1.5 1.5 0 0 0 40.48 28H32a1 1 0 0 1-.4-1.92A6 6 0 1 1 42 22Zm-2 0a4 4 0 1 0-8 0 4 4 0 0 0 8 0Z"/><g opacity=".35"><path d="M17 10a1 1 0 011-1h12a1 1 0 110 2H18a1 1 0 01-1-1Zm1-5a1 1 0 100 2h12a1 1 0 100-2H18ZM14 1a1 1 0 00-1 1v12a1 1 0 001 1h5.09l4.2 4.2a1 1 0 001.46-.04l3.7-4.16H34a1 1 0 001-1V2a1 1 0 00-1-1H14Zm1 12V3h18v10h-5a1 1 0 00-.75.34l-3.3 3.7-3.74-3.75a1 1 0 00-.71-.29H15Z"/></g></svg>
|
||
</div>
|
||
</div>
|
||
|
||
<div class="s-popover ws2"
|
||
id="popover-labs-left-nav"
|
||
role="menu"
|
||
aria-hidden="true">
|
||
<div class="s-popover--arrow"></div>
|
||
<svg aria-hidden="true" class="fc-black-600 mb8 svg-icon iconLabs" width="42" height="18"><path d="M11.5 13.624a.374.374 0 0 1-.37.376H5.361a.374.374 0 0 1-.37-.376V4.376c0-.207.165-.376.37-.376H6.62c.204 0 .37.169.37.376v7.611h4.138c.205 0 .371.169.371.377v1.26zm9.432.215c-.07.1-.185.161-.308.161H19.13a.376.376 0 0 1-.356-.254l-.55-1.7h-3.111l-.55 1.7a.377.377 0 0 1-.355.254h-1.494a.376.376 0 0 1-.353-.506l3.39-9.247A.376.376 0 0 1 16.103 4h1.13c.158 0 .299.099.353.247l3.39 9.247a.376.376 0 0 1-.045.345zm-4.157-7.386l-1.219 3.531h2.266l-1.047-3.53zm13.335 5.71a.37.37 0 0 0-.003.524c.956.971 2.047 1.313 3.486 1.313 1.014 0 1.92-.265 2.582-.788.67-.53 1.063-1.306 1.063-2.255 0-.855-.268-1.622-.867-2.145-.456-.41-1.008-.633-1.89-.767l-1.037-.153c-.377-.057-.672-.19-.832-.332-.146-.132-.221-.315-.221-.568 0-.309.11-.56.306-.737.199-.179.518-.312.986-.312.708 0 1.254.151 1.726.601a.37.37 0 0 0 .516-.004l.883-.87a.37.37 0 0 0-.008-.534C35.942 4.334 35.004 4 33.721 4c-1.016 0-1.872.292-2.479.836-.61.548-.935 1.32-.935 2.207 0 .82.243 1.502.781 2.01h.001c.468.437 1.135.716 1.93.826l1.072.153c.508.073.647.147.795.286l.008.007c.14.125.234.34.234.67 0 .332-.124.567-.344.73-.235.174-.617.293-1.165.293-.867 0-1.49-.185-2.066-.76a.37.37 0 0 0-.522-.003l-.92.908zM22.37 14a.374.374 0 0 1-.37-.376V4.376c0-.207.166-.376.37-.376h3.543c.913 0 1.697.264 2.257.78.564.519.863 1.259.863 2.129 0 .845-.377 1.524-.87 1.947.57.433 1.01 1.145 1.01 2.157 0 .941-.317 1.702-.894 2.224-.57.517-1.354.763-2.225.763H22.37zm3.543-1.977c.96 0 .959-1.01.959-1.01s0-1.013-.959-1.013H24v2.023h1.913zm-.115-4.063c1.074 0 1.074-1.015 1.074-1.015s0-1.016-1.074-1.016H24V7.96h1.798z" fill="var(--black-600)"/><path d="M0 4v10a4 4 0 0 0 4 4h34a4 4 0 0 0 4-4V4a4 4 0 0 0-4-4H4a4 4 0 0 0-4 4zm4-2h34a2 2 0 0 1 2 2v10a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2z" fill="var(--black-600)"/></svg>
|
||
<p class="fs-caption">Get early access and see previews of new features.</p>
|
||
<a class="s-btn s-btn__filled s-btn__xs s-btn__icon fs-fine" href="https://stackoverflow.co/labs/"><svg aria-hidden="true" class="svg-icon iconShareSm" width="14" height="14" viewBox="0 0 14 14"><path d="M5 1H3a2 2 0 0 0-2 2v8c0 1.1.9 2 2 2h8a2 2 0 0 0 2-2V9h-2v2H3V3h2V1Zm2 0h6v6h-2V4.5L6.5 9 5 7.5 9.5 3H7V1Z"/></svg> Learn more about Labs</a>
|
||
</div>
|
||
|
||
|
||
</div>
|
||
|
||
|
||
|
||
<div id="content" class="snippet-hidden">
|
||
|
||
|
||
|
||
<div itemprop="mainEntity" itemscope itemtype="https://schema.org/Question">
|
||
<link itemprop="image" href="https://cdn.sstatic.net/Sites/stackoverflow/Img/apple-touch-icon.png?v=c78bd457575a">
|
||
|
||
<div class="inner-content clearfix">
|
||
|
||
|
||
|
||
<div id="question-header" class="d-flex sm:fd-column">
|
||
<h1 itemprop="name" class="fs-headline1 ow-break-word mb8 flex--item fl1"><a href="/questions/20626994/how-to-calculate-the-inverse-of-the-normal-cumulative-distribution-function-in-p" class="question-hyperlink">How to calculate the inverse of the normal cumulative distribution function in python?</a></h1>
|
||
<div class="ml12 aside-cta flex--item print:d-none sm:ml0 sm:mb12 sm:order-first sm:as-end">
|
||
<a href="/questions/ask" class="ws-nowrap s-btn s-btn__filled">
|
||
Ask Question
|
||
</a>
|
||
|
||
</div>
|
||
</div>
|
||
<div class="d-flex fw-wrap pb8 mb16 bb bc-black-200">
|
||
<div class="flex--item ws-nowrap mr16 mb8" title="2013-12-17 05:57:49Z">
|
||
<span class="fc-black-400 mr2">Asked</span>
|
||
<time itemprop="dateCreated" datetime="2013-12-17T05:57:49">9 years, 11 months ago</time>
|
||
</div>
|
||
<div class="flex--item ws-nowrap mr16 mb8">
|
||
<span class="fc-black-400 mr2">Modified</span>
|
||
<a href="?lastactivity" class="s-link s-link__inherit" title="2022-08-15 14:05:56Z">1 year, 3 months ago</a>
|
||
</div>
|
||
<div class="flex--item ws-nowrap mb8" title="Viewed 199,067 times">
|
||
<span class="fc-black-400 mr2">Viewed</span>
|
||
199k times
|
||
</div>
|
||
</div>
|
||
<div id="mainbar" role="main" aria-label="question and answers">
|
||
|
||
|
||
<div class="question js-question" data-questionid="20626994" data-position-on-page="0" data-score="107" id="question">
|
||
<style>
|
||
</style>
|
||
<div class="js-zone-container zone-container-main">
|
||
<div id="dfp-tlb" class="everyonelovesstackoverflow everyoneloves__top-leaderboard everyoneloves__leaderboard"></div>
|
||
<div class="js-report-ad-button-container " style="width: 728px"></div>
|
||
</div>
|
||
|
||
<div class="post-layout ">
|
||
<div class="votecell post-layout--left">
|
||
<div class="js-voting-container d-flex jc-center fd-column ai-stretch gs4 fc-black-300" data-post-id="20626994" data-referrer="None">
|
||
<button class="js-vote-up-btn flex--item s-btn ba bar-pill c-pointer as-center bc-black-225 fc-black-500 h:bg-theme-primary-200"
|
||
data-controller="s-tooltip"
|
||
data-s-tooltip-placement="right"
|
||
title="This question shows research effort; it is useful and clear"
|
||
aria-pressed="false"
|
||
aria-label="Up vote"
|
||
data-selected-classes="fc-theme-primary bc-theme-primary bg-theme-primary-100"
|
||
data-unselected-classes="bc-black-225 fc-black-500 h:bg-theme-primary-200">
|
||
<svg aria-hidden="true" class="svg-icon iconArrowUp" width="18" height="18" viewBox="0 0 18 18"><path d="M1 12h16L9 4l-8 8Z"/></svg>
|
||
</button>
|
||
<div class="js-vote-count flex--item d-flex fd-column ai-center fc-theme-body-font fw-bold fs-subheading py4"
|
||
itemprop="upvoteCount"
|
||
data-value="107">
|
||
107
|
||
</div>
|
||
<button class="js-vote-down-btn flex--item mb8 s-btn ba bar-pill c-pointer as-center bc-black-225 fc-black-500 h:bg-theme-primary-200"
|
||
data-controller="s-tooltip"
|
||
data-s-tooltip-placement="right"
|
||
title="This question does not show any research effort; it is unclear or not useful"
|
||
aria-pressed="false"
|
||
aria-label="Down vote"
|
||
data-selected-classes="fc-theme-primary bc-theme-primary bg-theme-primary-100"
|
||
data-unselected-classes="bc-black-225 fc-black-500 h:bg-theme-primary-200">
|
||
<svg aria-hidden="true" class="svg-icon iconArrowDown" width="18" height="18" viewBox="0 0 18 18"><path d="M1 6h16l-8 8-8-8Z"/></svg>
|
||
</button>
|
||
|
||
|
||
|
||
<button class="js-saves-btn s-btn s-btn__unset c-pointer py4"
|
||
type="button"
|
||
id="saves-btn-20626994"
|
||
data-controller="s-tooltip"
|
||
data-s-tooltip-placement="right"
|
||
data-s-popover-placement=""
|
||
title="Save this question."
|
||
aria-pressed="false"
|
||
data-post-id="20626994"
|
||
data-post-type-id="1"
|
||
data-user-privilege-for-post-click="0"
|
||
aria-controls=""
|
||
data-s-popover-auto-show="false"
|
||
>
|
||
<svg aria-hidden="true" class="fc-theme-primary-400 js-saves-btn-selected d-none svg-icon iconBookmark" width="18" height="18" viewBox="0 0 18 18"><path d="M3 17V3c0-1.1.9-2 2-2h8a2 2 0 0 1 2 2v14l-6-4-6 4Z"/></svg>
|
||
<svg aria-hidden="true" class="js-saves-btn-unselected svg-icon iconBookmarkAlt" width="18" height="18" viewBox="0 0 18 18"><path d="m9 10.6 4 2.66V3H5v10.26l4-2.66ZM3 17V3c0-1.1.9-2 2-2h8a2 2 0 0 1 2 2v14l-6-4-6 4Z"/></svg>
|
||
</button>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<a class="js-post-issue flex--item s-btn s-btn__unset c-pointer py6 mx-auto" href="/posts/20626994/timeline" data-shortcut="T" data-ks-title="timeline" data-controller="s-tooltip" data-s-tooltip-placement="right" title="Show activity on this post." aria-label="Timeline"><svg aria-hidden="true" class="mln2 mr0 svg-icon iconHistory" width="19" height="18" viewBox="0 0 19 18"><path d="M3 9a8 8 0 1 1 3.73 6.77L8.2 14.3A6 6 0 1 0 5 9l3.01-.01-4 4-4-4h3L3 9Zm7-4h1.01L11 9.36l3.22 2.1-.6.93L10 10V5Z"/></svg></a>
|
||
|
||
</div>
|
||
|
||
</div>
|
||
|
||
|
||
|
||
<div class="postcell post-layout--right">
|
||
|
||
<div class="s-prose js-post-body" itemprop="text">
|
||
|
||
<p>How do I calculate the inverse of the cumulative distribution function (CDF) of the normal distribution in Python?</p>
|
||
|
||
<p>Which library should I use? Possibly scipy? </p>
|
||
</div>
|
||
|
||
<div class="mt24 mb12">
|
||
<div class="post-taglist d-flex gs4 gsy fd-column">
|
||
<div class="d-flex ps-relative fw-wrap">
|
||
|
||
<ul class='ml0 list-ls-none js-post-tag-list-wrapper d-inline'><li class='d-inline mr4 js-post-tag-list-item'><a href="/questions/tagged/python" class="post-tag" title="show questions tagged 'python'" aria-label="show questions tagged 'python'" rel="tag" aria-labelledby="tag-python-tooltip-container">python</a></li><li class='d-inline mr4 js-post-tag-list-item'><a href="/questions/tagged/scipy" class="post-tag" title="show questions tagged 'scipy'" aria-label="show questions tagged 'scipy'" rel="tag" aria-labelledby="tag-scipy-tooltip-container">scipy</a></li><li class='d-inline mr4 js-post-tag-list-item'><a href="/questions/tagged/normal-distribution" class="post-tag" title="show questions tagged 'normal-distribution'" aria-label="show questions tagged 'normal-distribution'" rel="tag" aria-labelledby="tag-normal-distribution-tooltip-container">normal-distribution</a></li></ul>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
|
||
<div class="mb0 ">
|
||
<div class="mt16 d-flex gs8 gsy fw-wrap jc-end ai-start pt4 mb16">
|
||
<div class="flex--item mr16 fl1 w96">
|
||
|
||
|
||
|
||
<div class="js-post-menu pt2" data-post-id="20626994" data-post-type-id="1">
|
||
|
||
<div class="d-flex gs8 s-anchors s-anchors__muted fw-wrap">
|
||
|
||
<div class="flex--item">
|
||
<a href="/q/20626994"
|
||
rel="nofollow"
|
||
itemprop="url"
|
||
class="js-share-link js-gps-track"
|
||
title="Short permalink to this question"
|
||
data-gps-track="post.click({ item: 2, priv: 0, post_type: 1 })"
|
||
data-controller="se-share-sheet"
|
||
data-se-share-sheet-title="Share a link to this question"
|
||
data-se-share-sheet-subtitle=""
|
||
data-se-share-sheet-post-type="question"
|
||
data-se-share-sheet-social="facebook twitter devto"
|
||
data-se-share-sheet-location="1"
|
||
data-se-share-sheet-license-url="https%3a%2f%2fcreativecommons.org%2flicenses%2fby-sa%2f3.0%2f"
|
||
data-se-share-sheet-license-name="CC BY-SA 3.0"
|
||
data-s-popover-placement="bottom-start">Share</a>
|
||
</div>
|
||
|
||
|
||
|
||
<div class="flex--item">
|
||
<button type="button"
|
||
id="btnFollowPost-20626994" class="s-btn s-btn__link js-follow-post js-follow-question js-gps-track"
|
||
data-gps-track="post.click({ item: 14, priv: 0, post_type: 1 })"
|
||
data-controller="s-tooltip " data-s-tooltip-placement="bottom"
|
||
data-s-popover-placement="bottom" aria-controls=""
|
||
title="Follow this question to receive notifications">
|
||
Follow
|
||
</button>
|
||
</div>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
</div>
|
||
<div class="js-menu-popup-container"></div>
|
||
</div>
|
||
</div>
|
||
|
||
<div class="post-signature flex--item">
|
||
<div class="user-info user-hover">
|
||
<div class="user-action-time">
|
||
<a href="/posts/20626994/revisions" title="show all edits to this post"
|
||
class="js-gps-track"
|
||
data-gps-track="post.click({ item: 4, priv: 0, post_type: 1 })">edited <span title='2015-03-31 14:52:45Z' class='relativetime'>Mar 31, 2015 at 14:52</span></a>
|
||
</div>
|
||
<div class="user-gravatar32">
|
||
<a href="/users/3139711/knedlsepp"><div class="gravatar-wrapper-32"><img src="https://i.stack.imgur.com/MemQ8.jpg?s=64&g=1" alt="knedlsepp's user avatar" width="32" height="32" class="bar-sm"></div></a>
|
||
</div>
|
||
<div class="user-details">
|
||
<a href="/users/3139711/knedlsepp">knedlsepp</a>
|
||
<div class="-flair">
|
||
<span class="reputation-score" title="reputation score " dir="ltr">6,065</span><span title="3 gold badges" aria-hidden="true"><span class="badge1"></span><span class="badgecount">3</span></span><span class="v-visible-sr">3 gold badges</span><span title="20 silver badges" aria-hidden="true"><span class="badge2"></span><span class="badgecount">20</span></span><span class="v-visible-sr">20 silver badges</span><span title="41 bronze badges" aria-hidden="true"><span class="badge3"></span><span class="badgecount">41</span></span><span class="v-visible-sr">41 bronze badges</span>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<div class="post-signature owner flex--item">
|
||
<div class="user-info ">
|
||
<div class="user-action-time">
|
||
asked <span title='2013-12-17 05:57:49Z' class='relativetime'>Dec 17, 2013 at 5:57</span>
|
||
</div>
|
||
<div class="user-gravatar32">
|
||
<a href="/users/1624752/yueyoum"><div class="gravatar-wrapper-32"><img src="https://www.gravatar.com/avatar/deabf064baf56e064e1d71fabb49b676?s=64&d=identicon&r=PG" alt="Yueyoum's user avatar" width="32" height="32" class="bar-sm"></div></a>
|
||
</div>
|
||
<div class="user-details" itemprop="author" itemscope itemtype="http://schema.org/Person">
|
||
<a href="/users/1624752/yueyoum">Yueyoum</a><span class="d-none" itemprop="name">Yueyoum</span>
|
||
<div class="-flair">
|
||
<span class="reputation-score" title="reputation score " dir="ltr">2,853</span><span title="5 gold badges" aria-hidden="true"><span class="badge1"></span><span class="badgecount">5</span></span><span class="v-visible-sr">5 gold badges</span><span title="23 silver badges" aria-hidden="true"><span class="badge2"></span><span class="badgecount">23</span></span><span class="v-visible-sr">23 silver badges</span><span title="26 bronze badges" aria-hidden="true"><span class="badge3"></span><span class="badgecount">26</span></span><span class="v-visible-sr">26 bronze badges</span>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
|
||
|
||
</div>
|
||
</div>
|
||
</div>
|
||
|
||
</div>
|
||
|
||
|
||
|
||
|
||
<span class="d-none" itemprop="commentCount">3</span>
|
||
<div class="post-layout--right js-post-comments-component">
|
||
<div id="comments-20626994" class="comments js-comments-container bt bc-black-200 mt12 " data-post-id="20626994" data-min-length="15">
|
||
<ul class="comments-list js-comments-list"
|
||
data-remaining-comments-count="0"
|
||
data-canpost="false"
|
||
data-cansee="true"
|
||
data-comments-unavailable="false"
|
||
data-addlink-disabled="true">
|
||
|
||
<li id="comment-30873309" class="comment js-comment " data-comment-id="30873309" data-comment-owner-id="1217358" data-comment-score="1">
|
||
<div class="js-comment-actions comment-actions">
|
||
<div class="comment-score js-comment-score js-comment-edit-hide">
|
||
<span title="number of 'useful comment' votes received"
|
||
class="cool">1</span>
|
||
</div>
|
||
</div>
|
||
<div class="comment-text js-comment-text-and-form">
|
||
<div class="comment-body js-comment-edit-hide">
|
||
|
||
<span class="comment-copy">Do you mean the inverse Gaussian distribution (<a href="http://en.wikipedia.org/wiki/Inverse_Gaussian_distribution" rel="nofollow noreferrer">en.wikipedia.org/wiki/Inverse_Gaussian_distribution</a>), or the inverse of the cumulative distribution function of the normal distribution (<a href="http://en.wikipedia.org/wiki/Normal_distribution" rel="nofollow noreferrer">en.wikipedia.org/wiki/Normal_distribution</a>), or something else?</span>
|
||
|
||
<div class="d-inline-flex ai-center">
|
||
– <a href="/users/1217358/warren-weckesser"
|
||
title="111,515 reputation"
|
||
class="comment-user">Warren Weckesser</a>
|
||
</div>
|
||
<span class="comment-date" dir="ltr"><span title='2013-12-17 06:30:48Z, License: CC BY-SA 3.0' class='relativetime-clean'>Dec 17, 2013 at 6:30</span></span>
|
||
<span title="this comment was edited 1 time">
|
||
<svg aria-hidden="true" class="va-text-bottom o50 svg-icon iconPencilSm" width="14" height="14" viewBox="0 0 14 14"><path fill="#F1B600" d="m2 10.12 6.37-6.43 1.88 1.88L3.88 12H2v-1.88Z"/><path fill="#E87C87" d="m11.1 1.71 1.13 1.12c.2.2.2.51 0 .71L11.1 4.7 9.21 2.86l1.17-1.15c.2-.2.51-.2.71 0Z"/></svg>
|
||
</span>
|
||
</div>
|
||
</div>
|
||
</li>
|
||
<li id="comment-30873351" class="comment js-comment " data-comment-id="30873351" data-comment-owner-id="1624752" data-comment-score="0">
|
||
<div class="js-comment-actions comment-actions">
|
||
<div class="comment-score js-comment-score js-comment-edit-hide">
|
||
</div>
|
||
</div>
|
||
<div class="comment-text js-comment-text-and-form">
|
||
<div class="comment-body js-comment-edit-hide">
|
||
|
||
<span class="comment-copy">@WarrenWeckesser the second one: inverse of the cumulative distribution function of the normal distribution</span>
|
||
|
||
<div class="d-inline-flex ai-center">
|
||
– <a href="/users/1624752/yueyoum"
|
||
title="2,853 reputation"
|
||
class="comment-user owner">Yueyoum</a>
|
||
</div>
|
||
<span class="comment-date" dir="ltr"><span title='2013-12-17 06:32:40Z, License: CC BY-SA 3.0' class='relativetime-clean'>Dec 17, 2013 at 6:32</span></span>
|
||
<span title="this comment was edited 1 time">
|
||
<svg aria-hidden="true" class="va-text-bottom o50 svg-icon iconPencilSm" width="14" height="14" viewBox="0 0 14 14"><path fill="#F1B600" d="m2 10.12 6.37-6.43 1.88 1.88L3.88 12H2v-1.88Z"/><path fill="#E87C87" d="m11.1 1.71 1.13 1.12c.2.2.2.51 0 .71L11.1 4.7 9.21 2.86l1.17-1.15c.2-.2.51-.2.71 0Z"/></svg>
|
||
</span>
|
||
</div>
|
||
</div>
|
||
</li>
|
||
<li id="comment-30873496" class="comment js-comment " data-comment-id="30873496" data-comment-owner-id="1624752" data-comment-score="1">
|
||
<div class="js-comment-actions comment-actions">
|
||
<div class="comment-score js-comment-score js-comment-edit-hide">
|
||
<span title="number of 'useful comment' votes received"
|
||
class="cool">1</span>
|
||
</div>
|
||
</div>
|
||
<div class="comment-text js-comment-text-and-form">
|
||
<div class="comment-body js-comment-edit-hide">
|
||
|
||
<span class="comment-copy">@WarrenWeckesser i mean the python version of "normsinv" function in excel.</span>
|
||
|
||
<div class="d-inline-flex ai-center">
|
||
– <a href="/users/1624752/yueyoum"
|
||
title="2,853 reputation"
|
||
class="comment-user owner">Yueyoum</a>
|
||
</div>
|
||
<span class="comment-date" dir="ltr"><span title='2013-12-17 06:39:22Z, License: CC BY-SA 3.0' class='relativetime-clean'>Dec 17, 2013 at 6:39</span></span>
|
||
</div>
|
||
</div>
|
||
</li>
|
||
|
||
</ul>
|
||
</div>
|
||
|
||
<div id="comments-link-20626994" data-rep=50 data-anon=true>
|
||
<a class="js-add-link comments-link disabled-link" title="Use comments to ask for more information or suggest improvements. Avoid answering questions in comments." href="#" role="button">Add a comment</a>
|
||
<span class="js-link-separator dno"> | </span>
|
||
<a class="js-show-link comments-link dno" title="Expand to show all comments on this post" href=# onclick="" role="button"></a>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
|
||
</div>
|
||
|
||
|
||
<div class="js-zone-container zone-container-responsive">
|
||
<div id="dfp-isb" class="everyonelovesstackoverflow everyoneloves__inline-sidebar mx-auto"></div>
|
||
<div class="js-report-ad-button-container mx-auto" style="width: 300px"></div>
|
||
</div>
|
||
|
||
|
||
|
||
<div id="answers">
|
||
<a name="tab-top"></a>
|
||
<div id="answers-header">
|
||
<div class="answers-subheader d-flex ai-center mb8">
|
||
<div class="flex--item fl1">
|
||
<h2 class="mb0" data-answercount="3">
|
||
3 Answers
|
||
<span style="display:none;" itemprop="answerCount">3</span>
|
||
</h2>
|
||
</div>
|
||
<div class="flex--item">
|
||
|
||
|
||
<div class="d-flex g4 gsx ai-center sm:fd-column sm:ai-start">
|
||
<div class="d-flex fd-column ai-end sm:ai-start">
|
||
<label class="flex--item fs-caption" for="answer-sort-dropdown-select-menu">
|
||
Sorted by:
|
||
</label>
|
||
<a
|
||
class="js-sort-preference-change s-link flex--item fs-fine d-none"
|
||
data-value="ScoreDesc"
|
||
href="/questions/20626994/how-to-calculate-the-inverse-of-the-normal-cumulative-distribution-function-in-p?answertab=scoredesc#tab-top"
|
||
>
|
||
Reset to default
|
||
</a>
|
||
</div>
|
||
<div class="flex--item s-select">
|
||
<select id="answer-sort-dropdown-select-menu">
|
||
<option
|
||
value=scoredesc
|
||
selected=selected
|
||
>
|
||
Highest score (default)
|
||
</option>
|
||
<option
|
||
value=trending
|
||
>
|
||
Trending (recent votes count more)
|
||
</option>
|
||
<option
|
||
value=modifieddesc
|
||
>
|
||
Date modified (newest first)
|
||
</option>
|
||
<option
|
||
value=createdasc
|
||
>
|
||
Date created (oldest first)
|
||
</option>
|
||
</select>
|
||
</div>
|
||
</div>
|
||
|
||
|
||
</div>
|
||
</div>
|
||
|
||
</div>
|
||
|
||
|
||
|
||
<a name="20627638"></a>
|
||
<div id="answer-20627638" class="answer js-answer accepted-answer js-accepted-answer" data-answerid="20627638" data-parentid="20626994" data-score="171" data-position-on-page="1" data-highest-scored="1" data-question-has-accepted-highest-score="1" itemprop="acceptedAnswer" itemscope itemtype="https://schema.org/Answer">
|
||
<div class="post-layout">
|
||
<div class="votecell post-layout--left">
|
||
<div class="js-voting-container d-flex jc-center fd-column ai-stretch gs4 fc-black-300" data-post-id="20627638" data-referrer="None">
|
||
<button class="js-vote-up-btn flex--item s-btn ba bar-pill c-pointer as-center bc-black-225 fc-black-500 h:bg-theme-primary-200"
|
||
data-controller="s-tooltip"
|
||
data-s-tooltip-placement="right"
|
||
title="This answer is useful"
|
||
aria-pressed="false"
|
||
aria-label="Up vote"
|
||
data-selected-classes="fc-theme-primary bc-theme-primary bg-theme-primary-100"
|
||
data-unselected-classes="bc-black-225 fc-black-500 h:bg-theme-primary-200">
|
||
<svg aria-hidden="true" class="svg-icon iconArrowUp" width="18" height="18" viewBox="0 0 18 18"><path d="M1 12h16L9 4l-8 8Z"/></svg>
|
||
</button>
|
||
<div class="js-vote-count flex--item d-flex fd-column ai-center fc-theme-body-font fw-bold fs-subheading py4"
|
||
itemprop="upvoteCount"
|
||
data-value="171">
|
||
171
|
||
</div>
|
||
<button class="js-vote-down-btn flex--item mb8 s-btn ba bar-pill c-pointer as-center bc-black-225 fc-black-500 h:bg-theme-primary-200"
|
||
data-controller="s-tooltip"
|
||
data-s-tooltip-placement="right"
|
||
title="This answer is not useful"
|
||
aria-pressed="false"
|
||
aria-label="Down vote"
|
||
data-selected-classes="fc-theme-primary bc-theme-primary bg-theme-primary-100"
|
||
data-unselected-classes="bc-black-225 fc-black-500 h:bg-theme-primary-200">
|
||
<svg aria-hidden="true" class="svg-icon iconArrowDown" width="18" height="18" viewBox="0 0 18 18"><path d="M1 6h16l-8 8-8-8Z"/></svg>
|
||
</button>
|
||
|
||
|
||
|
||
<button class="js-saves-btn s-btn s-btn__unset c-pointer py4"
|
||
type="button"
|
||
id="saves-btn-20627638"
|
||
data-controller="s-tooltip"
|
||
data-s-tooltip-placement="right"
|
||
data-s-popover-placement=""
|
||
title="Save this answer."
|
||
aria-pressed="false"
|
||
data-post-id="20627638"
|
||
data-post-type-id="2"
|
||
data-user-privilege-for-post-click="0"
|
||
aria-controls=""
|
||
data-s-popover-auto-show="false"
|
||
>
|
||
<svg aria-hidden="true" class="fc-theme-primary-400 js-saves-btn-selected d-none svg-icon iconBookmark" width="18" height="18" viewBox="0 0 18 18"><path d="M3 17V3c0-1.1.9-2 2-2h8a2 2 0 0 1 2 2v14l-6-4-6 4Z"/></svg>
|
||
<svg aria-hidden="true" class="js-saves-btn-unselected svg-icon iconBookmarkAlt" width="18" height="18" viewBox="0 0 18 18"><path d="m9 10.6 4 2.66V3H5v10.26l4-2.66ZM3 17V3c0-1.1.9-2 2-2h8a2 2 0 0 1 2 2v14l-6-4-6 4Z"/></svg>
|
||
</button>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<div class="js-accepted-answer-indicator flex--item fc-green-400 py6 mtn8" data-s-tooltip-placement="right" title="Loading when this answer was accepted…" tabindex="0" role="note" aria-label="Accepted">
|
||
<div class="ta-center">
|
||
<svg aria-hidden="true" class="svg-icon iconCheckmarkLg" width="36" height="36" viewBox="0 0 36 36"><path d="m6 14 8 8L30 6v8L14 30l-8-8v-8Z"/></svg>
|
||
</div>
|
||
</div>
|
||
|
||
|
||
<a class="js-post-issue flex--item s-btn s-btn__unset c-pointer py6 mx-auto" href="/posts/20627638/timeline" data-shortcut="T" data-ks-title="timeline" data-controller="s-tooltip" data-s-tooltip-placement="right" title="Show activity on this post." aria-label="Timeline"><svg aria-hidden="true" class="mln2 mr0 svg-icon iconHistory" width="19" height="18" viewBox="0 0 19 18"><path d="M3 9a8 8 0 1 1 3.73 6.77L8.2 14.3A6 6 0 1 0 5 9l3.01-.01-4 4-4-4h3L3 9Zm7-4h1.01L11 9.36l3.22 2.1-.6.93L10 10V5Z"/></svg></a>
|
||
|
||
</div>
|
||
|
||
</div>
|
||
|
||
|
||
|
||
<div class="answercell post-layout--right">
|
||
|
||
<div class="s-prose js-post-body" itemprop="text">
|
||
<p><a href="http://support.microsoft.com/kb/826772" rel="noreferrer">NORMSINV</a> (mentioned in a comment) is the inverse of the CDF of the standard normal distribution. Using <code>scipy</code>, you can compute this with the <code>ppf</code> method of the <a href="http://docs.scipy.org/doc/scipy/reference/generated/scipy.stats.norm.html" rel="noreferrer"><code>scipy.stats.norm</code></a> object. The acronym <code>ppf</code> stands for <a href="http://www.itl.nist.gov/div898/handbook/eda/section3/eda362.htm#PPF" rel="noreferrer"><em>percent point function</em></a>, which is another name for the <a href="https://en.wikipedia.org/wiki/Quantile_function" rel="noreferrer"><em>quantile function</em></a>.</p>
|
||
<pre><code>In [20]: from scipy.stats import norm
|
||
|
||
In [21]: norm.ppf(0.95)
|
||
Out[21]: 1.6448536269514722
|
||
</code></pre>
|
||
<p>Check that it is the inverse of the CDF:</p>
|
||
<pre><code>In [34]: norm.cdf(norm.ppf(0.95))
|
||
Out[34]: 0.94999999999999996
|
||
</code></pre>
|
||
<p>By default, <code>norm.ppf</code> uses mean=0 and stddev=1, which is the "standard" normal distribution. You can use a different mean and standard deviation by specifying the <code>loc</code> and <code>scale</code> arguments, respectively.</p>
|
||
<pre><code>In [35]: norm.ppf(0.95, loc=10, scale=2)
|
||
Out[35]: 13.289707253902945
|
||
</code></pre>
|
||
<p>If you look at the source code for <code>scipy.stats.norm</code>, you'll find that the <code>ppf</code> method ultimately calls <a href="http://docs.scipy.org/doc/scipy/reference/generated/scipy.special.ndtri.html" rel="noreferrer"><code>scipy.special.ndtri</code></a>. So to compute the inverse of the CDF of the standard normal distribution, you could use that function directly:</p>
|
||
<pre><code>In [43]: from scipy.special import ndtri
|
||
|
||
In [44]: ndtri(0.95)
|
||
Out[44]: 1.6448536269514722
|
||
</code></pre>
|
||
<p><code>ndtri</code> is <em>much</em> faster than <code>norm.ppf</code>:</p>
|
||
<pre><code>In [46]: %timeit norm.ppf(0.95)
|
||
240 µs ± 1.75 µs per loop (mean ± std. dev. of 7 runs, 1,000 loops each)
|
||
|
||
In [47]: %timeit ndtri(0.95)
|
||
1.47 µs ± 1.3 ns per loop (mean ± std. dev. of 7 runs, 1,000,000 loops each)
|
||
</code></pre>
|
||
</div>
|
||
<div class="mt24">
|
||
<div class="d-flex fw-wrap ai-start jc-end gs8 gsy">
|
||
<time itemprop="dateCreated" datetime="2013-12-17T06:44:02"></time>
|
||
<div class="flex--item mr16" style="flex: 1 1 100px;">
|
||
|
||
|
||
|
||
<div class="js-post-menu pt2" data-post-id="20627638" data-post-type-id="2">
|
||
|
||
<div class="d-flex gs8 s-anchors s-anchors__muted fw-wrap">
|
||
|
||
<div class="flex--item">
|
||
<a href="/a/20627638"
|
||
rel="nofollow"
|
||
itemprop="url"
|
||
class="js-share-link js-gps-track"
|
||
title="Short permalink to this answer"
|
||
data-gps-track="post.click({ item: 2, priv: 0, post_type: 2 })"
|
||
data-controller="se-share-sheet"
|
||
data-se-share-sheet-title="Share a link to this answer"
|
||
data-se-share-sheet-subtitle=""
|
||
data-se-share-sheet-post-type="answer"
|
||
data-se-share-sheet-social="facebook twitter devto"
|
||
data-se-share-sheet-location="2"
|
||
data-se-share-sheet-license-url="https%3a%2f%2fcreativecommons.org%2flicenses%2fby-sa%2f4.0%2f"
|
||
data-se-share-sheet-license-name="CC BY-SA 4.0"
|
||
data-s-popover-placement="bottom-start">Share</a>
|
||
</div>
|
||
|
||
|
||
|
||
<div class="flex--item">
|
||
<button type="button"
|
||
id="btnFollowPost-20627638" class="s-btn s-btn__link js-follow-post js-follow-answer js-gps-track"
|
||
data-gps-track="post.click({ item: 14, priv: 0, post_type: 2 })"
|
||
data-controller="s-tooltip " data-s-tooltip-placement="bottom"
|
||
data-s-popover-placement="bottom" aria-controls=""
|
||
title="Follow this answer to receive notifications">
|
||
Follow
|
||
</button>
|
||
</div>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
</div>
|
||
<div class="js-menu-popup-container"></div>
|
||
</div>
|
||
</div>
|
||
<div class="post-signature flex--item fl0">
|
||
<div class="user-info ">
|
||
<div class="user-action-time">
|
||
<a href="/posts/20627638/revisions" title="show all edits to this post"
|
||
class="js-gps-track"
|
||
data-gps-track="post.click({ item: 4, priv: 0, post_type: 2 })">edited <span title='2022-08-15 14:05:56Z' class='relativetime'>Aug 15, 2022 at 14:05</span></a>
|
||
</div>
|
||
<div class="user-gravatar32">
|
||
|
||
</div>
|
||
<div class="user-details">
|
||
|
||
<div class="-flair">
|
||
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
|
||
|
||
<div class="post-signature flex--item fl0">
|
||
<div class="user-info ">
|
||
<div class="user-action-time">
|
||
answered <span title='2013-12-17 06:44:02Z' class='relativetime'>Dec 17, 2013 at 6:44</span>
|
||
</div>
|
||
<div class="user-gravatar32">
|
||
<a href="/users/1217358/warren-weckesser"><div class="gravatar-wrapper-32"><img src="https://www.gravatar.com/avatar/d2aafb97833979e3668c61d36e697bfc?s=64&d=identicon&r=PG" alt="Warren Weckesser's user avatar" width="32" height="32" class="bar-sm"></div></a>
|
||
</div>
|
||
<div class="user-details" itemprop="author" itemscope itemtype="http://schema.org/Person">
|
||
<a href="/users/1217358/warren-weckesser">Warren Weckesser</a><span class="d-none" itemprop="name">Warren Weckesser</span>
|
||
<div class="-flair">
|
||
<span class="reputation-score" title="reputation score 111,515" dir="ltr">112k</span><span title="19 gold badges" aria-hidden="true"><span class="badge1"></span><span class="badgecount">19</span></span><span class="v-visible-sr">19 gold badges</span><span title="196 silver badges" aria-hidden="true"><span class="badge2"></span><span class="badgecount">196</span></span><span class="v-visible-sr">196 silver badges</span><span title="215 bronze badges" aria-hidden="true"><span class="badge3"></span><span class="badgecount">215</span></span><span class="v-visible-sr">215 bronze badges</span>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
|
||
|
||
</div>
|
||
</div>
|
||
|
||
|
||
</div>
|
||
|
||
</div>
|
||
|
||
|
||
|
||
|
||
<span class="d-none" itemprop="commentCount">4</span>
|
||
<div class="post-layout--right js-post-comments-component">
|
||
<div id="comments-20627638" class="comments js-comments-container bt bc-black-200 mt12 " data-post-id="20627638" data-min-length="15">
|
||
<ul class="comments-list js-comments-list"
|
||
data-remaining-comments-count="0"
|
||
data-canpost="false"
|
||
data-cansee="true"
|
||
data-comments-unavailable="false"
|
||
data-addlink-disabled="true">
|
||
|
||
<li id="comment-41064090" class="comment js-comment " data-comment-id="41064090" data-comment-owner-id="1670078" data-comment-score="29">
|
||
<div class="js-comment-actions comment-actions">
|
||
<div class="comment-score js-comment-score js-comment-edit-hide">
|
||
<span title="number of 'useful comment' votes received"
|
||
class="hot">29</span>
|
||
</div>
|
||
</div>
|
||
<div class="comment-text js-comment-text-and-form">
|
||
<div class="comment-body js-comment-edit-hide">
|
||
|
||
<span class="comment-copy">I always think "percent point function" (ppf) is a terrible name. Most people in statistics just use "quantile function".</span>
|
||
|
||
<div class="d-inline-flex ai-center">
|
||
– <a href="/users/1670078/william-zhang"
|
||
title="699 reputation"
|
||
class="comment-user">William Zhang</a>
|
||
</div>
|
||
<span class="comment-date" dir="ltr"><span title='2014-10-04 00:44:33Z, License: CC BY-SA 3.0' class='relativetime-clean'>Oct 4, 2014 at 0:44</span></span>
|
||
</div>
|
||
</div>
|
||
</li>
|
||
<li id="comment-116623338" class="comment js-comment " data-comment-id="116623338" data-comment-owner-id="1391660" data-comment-score="0">
|
||
<div class="js-comment-actions comment-actions">
|
||
<div class="comment-score js-comment-score js-comment-edit-hide">
|
||
</div>
|
||
</div>
|
||
<div class="comment-text js-comment-text-and-form">
|
||
<div class="comment-body js-comment-edit-hide">
|
||
|
||
<span class="comment-copy">Don't you need to specify the mean and the std on both ppf and cdf?</span>
|
||
|
||
<div class="d-inline-flex ai-center">
|
||
– <a href="/users/1391660/bones-felipe"
|
||
title="586 reputation"
|
||
class="comment-user">bones.felipe</a>
|
||
</div>
|
||
<span class="comment-date" dir="ltr"><span title='2021-01-29 19:23:44Z, License: CC BY-SA 4.0' class='relativetime-clean'>Jan 29, 2021 at 19:23</span></span>
|
||
<span title="this comment was edited 2 times">
|
||
<svg aria-hidden="true" class="va-text-bottom o50 svg-icon iconPencilSm" width="14" height="14" viewBox="0 0 14 14"><path fill="#F1B600" d="m2 10.12 6.37-6.43 1.88 1.88L3.88 12H2v-1.88Z"/><path fill="#E87C87" d="m11.1 1.71 1.13 1.12c.2.2.2.51 0 .71L11.1 4.7 9.21 2.86l1.17-1.15c.2-.2.51-.2.71 0Z"/></svg>
|
||
</span>
|
||
</div>
|
||
</div>
|
||
</li>
|
||
<li id="comment-116623958" class="comment js-comment " data-comment-id="116623958" data-comment-owner-id="1217358" data-comment-score="0">
|
||
<div class="js-comment-actions comment-actions">
|
||
<div class="comment-score js-comment-score js-comment-edit-hide">
|
||
</div>
|
||
</div>
|
||
<div class="comment-text js-comment-text-and-form">
|
||
<div class="comment-body js-comment-edit-hide">
|
||
|
||
<span class="comment-copy">@bones.felipe, the "standard" normal distribution has mean 0 and standard deviation 1. These are the default values for the location and scale of the <code>scipy.stats.norm</code> methods.</span>
|
||
|
||
<div class="d-inline-flex ai-center">
|
||
– <a href="/users/1217358/warren-weckesser"
|
||
title="111,515 reputation"
|
||
class="comment-user">Warren Weckesser</a>
|
||
</div>
|
||
<span class="comment-date" dir="ltr"><span title='2021-01-29 19:55:51Z, License: CC BY-SA 4.0' class='relativetime-clean'>Jan 29, 2021 at 19:55</span></span>
|
||
</div>
|
||
</div>
|
||
</li>
|
||
<li id="comment-116630954" class="comment js-comment " data-comment-id="116630954" data-comment-owner-id="1391660" data-comment-score="0">
|
||
<div class="js-comment-actions comment-actions">
|
||
<div class="comment-score js-comment-score js-comment-edit-hide">
|
||
</div>
|
||
</div>
|
||
<div class="comment-text js-comment-text-and-form">
|
||
<div class="comment-body js-comment-edit-hide">
|
||
|
||
<span class="comment-copy">Right, I thought I saw this <code>norm.cdf(norm.ppf(0.95, loc=10, scale=2))</code> and I thought it was weird <code>norm.cdf</code> did not have <code>loc=10</code> and <code>scale=2</code> too, I guess it should.</span>
|
||
|
||
<div class="d-inline-flex ai-center">
|
||
– <a href="/users/1391660/bones-felipe"
|
||
title="586 reputation"
|
||
class="comment-user">bones.felipe</a>
|
||
</div>
|
||
<span class="comment-date" dir="ltr"><span title='2021-01-30 05:33:43Z, License: CC BY-SA 4.0' class='relativetime-clean'>Jan 30, 2021 at 5:33</span></span>
|
||
<span title="this comment was edited 1 time">
|
||
<svg aria-hidden="true" class="va-text-bottom o50 svg-icon iconPencilSm" width="14" height="14" viewBox="0 0 14 14"><path fill="#F1B600" d="m2 10.12 6.37-6.43 1.88 1.88L3.88 12H2v-1.88Z"/><path fill="#E87C87" d="m11.1 1.71 1.13 1.12c.2.2.2.51 0 .71L11.1 4.7 9.21 2.86l1.17-1.15c.2-.2.51-.2.71 0Z"/></svg>
|
||
</span>
|
||
</div>
|
||
</div>
|
||
</li>
|
||
|
||
</ul>
|
||
</div>
|
||
|
||
<div id="comments-link-20627638" data-rep=50 data-anon=true>
|
||
<a class="js-add-link comments-link disabled-link" title="Use comments to ask for more information or suggest improvements. Avoid comments like “+1” or “thanks”." href="#" role="button">Add a comment</a>
|
||
<span class="js-link-separator dno"> | </span>
|
||
<a class="js-show-link comments-link dno" title="Expand to show all comments on this post" href=# onclick="" role="button"></a>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
|
||
<div class="js-zone-container zone-container-main">
|
||
<div id="dfp-mlb" class="everyonelovesstackoverflow everyoneloves__mid-leaderboard everyoneloves__leaderboard"></div>
|
||
<div class="js-report-ad-button-container " style="width: 728px"></div>
|
||
</div>
|
||
|
||
<a name="55250607"></a>
|
||
<div id="answer-55250607" class="answer js-answer" data-answerid="55250607" data-parentid="20626994" data-score="39" data-position-on-page="2" data-highest-scored="0" data-question-has-accepted-highest-score="1" itemprop="suggestedAnswer" itemscope itemtype="https://schema.org/Answer">
|
||
<div class="post-layout">
|
||
<div class="votecell post-layout--left">
|
||
<div class="js-voting-container d-flex jc-center fd-column ai-stretch gs4 fc-black-300" data-post-id="55250607" data-referrer="None">
|
||
<button class="js-vote-up-btn flex--item s-btn ba bar-pill c-pointer as-center bc-black-225 fc-black-500 h:bg-theme-primary-200"
|
||
data-controller="s-tooltip"
|
||
data-s-tooltip-placement="right"
|
||
title="This answer is useful"
|
||
aria-pressed="false"
|
||
aria-label="Up vote"
|
||
data-selected-classes="fc-theme-primary bc-theme-primary bg-theme-primary-100"
|
||
data-unselected-classes="bc-black-225 fc-black-500 h:bg-theme-primary-200">
|
||
<svg aria-hidden="true" class="svg-icon iconArrowUp" width="18" height="18" viewBox="0 0 18 18"><path d="M1 12h16L9 4l-8 8Z"/></svg>
|
||
</button>
|
||
<div class="js-vote-count flex--item d-flex fd-column ai-center fc-theme-body-font fw-bold fs-subheading py4"
|
||
itemprop="upvoteCount"
|
||
data-value="39">
|
||
39
|
||
</div>
|
||
<button class="js-vote-down-btn flex--item mb8 s-btn ba bar-pill c-pointer as-center bc-black-225 fc-black-500 h:bg-theme-primary-200"
|
||
data-controller="s-tooltip"
|
||
data-s-tooltip-placement="right"
|
||
title="This answer is not useful"
|
||
aria-pressed="false"
|
||
aria-label="Down vote"
|
||
data-selected-classes="fc-theme-primary bc-theme-primary bg-theme-primary-100"
|
||
data-unselected-classes="bc-black-225 fc-black-500 h:bg-theme-primary-200">
|
||
<svg aria-hidden="true" class="svg-icon iconArrowDown" width="18" height="18" viewBox="0 0 18 18"><path d="M1 6h16l-8 8-8-8Z"/></svg>
|
||
</button>
|
||
|
||
|
||
|
||
<button class="js-saves-btn s-btn s-btn__unset c-pointer py4"
|
||
type="button"
|
||
id="saves-btn-55250607"
|
||
data-controller="s-tooltip"
|
||
data-s-tooltip-placement="right"
|
||
data-s-popover-placement=""
|
||
title="Save this answer."
|
||
aria-pressed="false"
|
||
data-post-id="55250607"
|
||
data-post-type-id="2"
|
||
data-user-privilege-for-post-click="0"
|
||
aria-controls=""
|
||
data-s-popover-auto-show="false"
|
||
>
|
||
<svg aria-hidden="true" class="fc-theme-primary-400 js-saves-btn-selected d-none svg-icon iconBookmark" width="18" height="18" viewBox="0 0 18 18"><path d="M3 17V3c0-1.1.9-2 2-2h8a2 2 0 0 1 2 2v14l-6-4-6 4Z"/></svg>
|
||
<svg aria-hidden="true" class="js-saves-btn-unselected svg-icon iconBookmarkAlt" width="18" height="18" viewBox="0 0 18 18"><path d="m9 10.6 4 2.66V3H5v10.26l4-2.66ZM3 17V3c0-1.1.9-2 2-2h8a2 2 0 0 1 2 2v14l-6-4-6 4Z"/></svg>
|
||
</button>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<div class="js-accepted-answer-indicator flex--item fc-green-400 py6 mtn8 d-none" data-s-tooltip-placement="right" title="Loading when this answer was accepted…" tabindex="0" role="note" aria-label="Accepted">
|
||
<div class="ta-center">
|
||
<svg aria-hidden="true" class="svg-icon iconCheckmarkLg" width="36" height="36" viewBox="0 0 36 36"><path d="m6 14 8 8L30 6v8L14 30l-8-8v-8Z"/></svg>
|
||
</div>
|
||
</div>
|
||
|
||
|
||
<a class="js-post-issue flex--item s-btn s-btn__unset c-pointer py6 mx-auto" href="/posts/55250607/timeline" data-shortcut="T" data-ks-title="timeline" data-controller="s-tooltip" data-s-tooltip-placement="right" title="Show activity on this post." aria-label="Timeline"><svg aria-hidden="true" class="mln2 mr0 svg-icon iconHistory" width="19" height="18" viewBox="0 0 19 18"><path d="M3 9a8 8 0 1 1 3.73 6.77L8.2 14.3A6 6 0 1 0 5 9l3.01-.01-4 4-4-4h3L3 9Zm7-4h1.01L11 9.36l3.22 2.1-.6.93L10 10V5Z"/></svg></a>
|
||
|
||
</div>
|
||
|
||
</div>
|
||
|
||
|
||
|
||
<div class="answercell post-layout--right">
|
||
|
||
<div class="s-prose js-post-body" itemprop="text">
|
||
<p>Starting <code>Python 3.8</code>, the standard library provides the <a href="https://docs.python.org/3.8/library/statistics.html?highlight=normaldist#statistics.NormalDist" rel="noreferrer"><code>NormalDist</code></a> object as part of the <a href="https://docs.python.org/3.8/library/statistics.html" rel="noreferrer"><code>statistics</code></a> module.</p>
|
||
|
||
<p>It can be used to get the <strong><em>inverse cumulative distribution function</em></strong> (<strong><a href="https://docs.python.org/3.8/library/statistics.html#statistics.NormalDist.inv_cdf" rel="noreferrer"><code>inv_cdf</code></a></strong> - inverse of the <a href="https://docs.python.org/3.8/library/statistics.html#statistics.NormalDist.cdf" rel="noreferrer"><code>cdf</code></a>), also known as the <strong>quantile function</strong> or the <strong>percent-point function</strong> for a given <em>mean</em> (<code>mu</code>) and <em>standard deviation</em> (<code>sigma</code>):</p>
|
||
|
||
<pre><code>from statistics import NormalDist
|
||
|
||
NormalDist(mu=10, sigma=2).inv_cdf(0.95)
|
||
# 13.289707253902943
|
||
</code></pre>
|
||
|
||
<p>Which can be simplified for the <em>standard normal distribution</em> (<code>mu = 0</code> and <code>sigma = 1</code>):</p>
|
||
|
||
<pre><code>NormalDist().inv_cdf(0.95)
|
||
# 1.6448536269514715
|
||
</code></pre>
|
||
</div>
|
||
<div class="mt24">
|
||
<div class="d-flex fw-wrap ai-start jc-end gs8 gsy">
|
||
<time itemprop="dateCreated" datetime="2019-03-19T21:58:57"></time>
|
||
<div class="flex--item mr16" style="flex: 1 1 100px;">
|
||
|
||
|
||
|
||
<div class="js-post-menu pt2" data-post-id="55250607" data-post-type-id="2">
|
||
|
||
<div class="d-flex gs8 s-anchors s-anchors__muted fw-wrap">
|
||
|
||
<div class="flex--item">
|
||
<a href="/a/55250607"
|
||
rel="nofollow"
|
||
itemprop="url"
|
||
class="js-share-link js-gps-track"
|
||
title="Short permalink to this answer"
|
||
data-gps-track="post.click({ item: 2, priv: 0, post_type: 2 })"
|
||
data-controller="se-share-sheet"
|
||
data-se-share-sheet-title="Share a link to this answer"
|
||
data-se-share-sheet-subtitle=""
|
||
data-se-share-sheet-post-type="answer"
|
||
data-se-share-sheet-social="facebook twitter devto"
|
||
data-se-share-sheet-location="2"
|
||
data-se-share-sheet-license-url="https%3a%2f%2fcreativecommons.org%2flicenses%2fby-sa%2f4.0%2f"
|
||
data-se-share-sheet-license-name="CC BY-SA 4.0"
|
||
data-s-popover-placement="bottom-start">Share</a>
|
||
</div>
|
||
|
||
|
||
|
||
<div class="flex--item">
|
||
<button type="button"
|
||
id="btnFollowPost-55250607" class="s-btn s-btn__link js-follow-post js-follow-answer js-gps-track"
|
||
data-gps-track="post.click({ item: 14, priv: 0, post_type: 2 })"
|
||
data-controller="s-tooltip " data-s-tooltip-placement="bottom"
|
||
data-s-popover-placement="bottom" aria-controls=""
|
||
title="Follow this answer to receive notifications">
|
||
Follow
|
||
</button>
|
||
</div>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
</div>
|
||
<div class="js-menu-popup-container"></div>
|
||
</div>
|
||
</div>
|
||
|
||
|
||
<div class="post-signature flex--item fl0">
|
||
<div class="user-info user-hover">
|
||
<div class="user-action-time">
|
||
answered <span title='2019-03-19 21:58:57Z' class='relativetime'>Mar 19, 2019 at 21:58</span>
|
||
</div>
|
||
<div class="user-gravatar32">
|
||
<a href="/users/9297144/xavier-guihot"><div class="gravatar-wrapper-32"><img src="https://i.stack.imgur.com/WLMMD.png?s=64&g=1" alt="Xavier Guihot's user avatar" width="32" height="32" class="bar-sm"></div></a>
|
||
</div>
|
||
<div class="user-details" itemprop="author" itemscope itemtype="http://schema.org/Person">
|
||
<a href="/users/9297144/xavier-guihot">Xavier Guihot</a><span class="d-none" itemprop="name">Xavier Guihot</span>
|
||
<div class="-flair">
|
||
<span class="reputation-score" title="reputation score 56,556" dir="ltr">56.6k</span><span title="22 gold badges" aria-hidden="true"><span class="badge1"></span><span class="badgecount">22</span></span><span class="v-visible-sr">22 gold badges</span><span title="297 silver badges" aria-hidden="true"><span class="badge2"></span><span class="badgecount">297</span></span><span class="v-visible-sr">297 silver badges</span><span title="192 bronze badges" aria-hidden="true"><span class="badge3"></span><span class="badgecount">192</span></span><span class="v-visible-sr">192 bronze badges</span>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
|
||
|
||
</div>
|
||
</div>
|
||
|
||
|
||
</div>
|
||
|
||
</div>
|
||
|
||
|
||
|
||
|
||
<span class="d-none" itemprop="commentCount">2</span>
|
||
<div class="post-layout--right js-post-comments-component">
|
||
<div id="comments-55250607" class="comments js-comments-container bt bc-black-200 mt12 " data-post-id="55250607" data-min-length="15">
|
||
<ul class="comments-list js-comments-list"
|
||
data-remaining-comments-count="0"
|
||
data-canpost="false"
|
||
data-cansee="true"
|
||
data-comments-unavailable="false"
|
||
data-addlink-disabled="true">
|
||
|
||
<li id="comment-106743999" class="comment js-comment " data-comment-id="106743999" data-comment-owner-id="5437918" data-comment-score="4">
|
||
<div class="js-comment-actions comment-actions">
|
||
<div class="comment-score js-comment-score js-comment-edit-hide">
|
||
<span title="number of 'useful comment' votes received"
|
||
class="cool">4</span>
|
||
</div>
|
||
</div>
|
||
<div class="comment-text js-comment-text-and-form">
|
||
<div class="comment-body js-comment-edit-hide">
|
||
|
||
<span class="comment-copy">Great tip! This allows me to drop the dependency on scipy, which I needed just for the single stats.norm.ppf method</span>
|
||
|
||
<div class="d-inline-flex ai-center">
|
||
– <a href="/users/5437918/jethro-cao"
|
||
title="1,010 reputation"
|
||
class="comment-user">Jethro Cao</a>
|
||
</div>
|
||
<span class="comment-date" dir="ltr"><span title='2020-02-21 16:56:27Z, License: CC BY-SA 4.0' class='relativetime-clean'>Feb 21, 2020 at 16:56</span></span>
|
||
</div>
|
||
</div>
|
||
</li>
|
||
<li id="comment-126713418" class="comment js-comment " data-comment-id="126713418" data-comment-owner-id="10824677" data-comment-score="0">
|
||
<div class="js-comment-actions comment-actions">
|
||
<div class="comment-score js-comment-score js-comment-edit-hide">
|
||
</div>
|
||
</div>
|
||
<div class="comment-text js-comment-text-and-form">
|
||
<div class="comment-body js-comment-edit-hide">
|
||
|
||
<span class="comment-copy">can you use that to transform data with uniform distribution to normal ?</span>
|
||
|
||
<div class="d-inline-flex ai-center">
|
||
– <a href="/users/10824677/vanetoj"
|
||
title="103 reputation"
|
||
class="comment-user">vanetoj</a>
|
||
</div>
|
||
<span class="comment-date" dir="ltr"><span title='2022-03-31 20:51:01Z, License: CC BY-SA 4.0' class='relativetime-clean'>Mar 31, 2022 at 20:51</span></span>
|
||
</div>
|
||
</div>
|
||
</li>
|
||
|
||
</ul>
|
||
</div>
|
||
|
||
<div id="comments-link-55250607" data-rep=50 data-anon=true>
|
||
<a class="js-add-link comments-link disabled-link" title="Use comments to ask for more information or suggest improvements. Avoid comments like “+1” or “thanks”." href="#" role="button">Add a comment</a>
|
||
<span class="js-link-separator dno"> | </span>
|
||
<a class="js-show-link comments-link dno" title="Expand to show all comments on this post" href=# onclick="" role="button"></a>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
|
||
|
||
<a name="32798562"></a>
|
||
<div id="answer-32798562" class="answer js-answer" data-answerid="32798562" data-parentid="20626994" data-score="21" data-position-on-page="3" data-highest-scored="0" data-question-has-accepted-highest-score="1" itemprop="suggestedAnswer" itemscope itemtype="https://schema.org/Answer">
|
||
<div class="post-layout">
|
||
<div class="votecell post-layout--left">
|
||
<div class="js-voting-container d-flex jc-center fd-column ai-stretch gs4 fc-black-300" data-post-id="32798562" data-referrer="None">
|
||
<button class="js-vote-up-btn flex--item s-btn ba bar-pill c-pointer as-center bc-black-225 fc-black-500 h:bg-theme-primary-200"
|
||
data-controller="s-tooltip"
|
||
data-s-tooltip-placement="right"
|
||
title="This answer is useful"
|
||
aria-pressed="false"
|
||
aria-label="Up vote"
|
||
data-selected-classes="fc-theme-primary bc-theme-primary bg-theme-primary-100"
|
||
data-unselected-classes="bc-black-225 fc-black-500 h:bg-theme-primary-200">
|
||
<svg aria-hidden="true" class="svg-icon iconArrowUp" width="18" height="18" viewBox="0 0 18 18"><path d="M1 12h16L9 4l-8 8Z"/></svg>
|
||
</button>
|
||
<div class="js-vote-count flex--item d-flex fd-column ai-center fc-theme-body-font fw-bold fs-subheading py4"
|
||
itemprop="upvoteCount"
|
||
data-value="21">
|
||
21
|
||
</div>
|
||
<button class="js-vote-down-btn flex--item mb8 s-btn ba bar-pill c-pointer as-center bc-black-225 fc-black-500 h:bg-theme-primary-200"
|
||
data-controller="s-tooltip"
|
||
data-s-tooltip-placement="right"
|
||
title="This answer is not useful"
|
||
aria-pressed="false"
|
||
aria-label="Down vote"
|
||
data-selected-classes="fc-theme-primary bc-theme-primary bg-theme-primary-100"
|
||
data-unselected-classes="bc-black-225 fc-black-500 h:bg-theme-primary-200">
|
||
<svg aria-hidden="true" class="svg-icon iconArrowDown" width="18" height="18" viewBox="0 0 18 18"><path d="M1 6h16l-8 8-8-8Z"/></svg>
|
||
</button>
|
||
|
||
|
||
|
||
<button class="js-saves-btn s-btn s-btn__unset c-pointer py4"
|
||
type="button"
|
||
id="saves-btn-32798562"
|
||
data-controller="s-tooltip"
|
||
data-s-tooltip-placement="right"
|
||
data-s-popover-placement=""
|
||
title="Save this answer."
|
||
aria-pressed="false"
|
||
data-post-id="32798562"
|
||
data-post-type-id="2"
|
||
data-user-privilege-for-post-click="0"
|
||
aria-controls=""
|
||
data-s-popover-auto-show="false"
|
||
>
|
||
<svg aria-hidden="true" class="fc-theme-primary-400 js-saves-btn-selected d-none svg-icon iconBookmark" width="18" height="18" viewBox="0 0 18 18"><path d="M3 17V3c0-1.1.9-2 2-2h8a2 2 0 0 1 2 2v14l-6-4-6 4Z"/></svg>
|
||
<svg aria-hidden="true" class="js-saves-btn-unselected svg-icon iconBookmarkAlt" width="18" height="18" viewBox="0 0 18 18"><path d="m9 10.6 4 2.66V3H5v10.26l4-2.66ZM3 17V3c0-1.1.9-2 2-2h8a2 2 0 0 1 2 2v14l-6-4-6 4Z"/></svg>
|
||
</button>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<div class="js-accepted-answer-indicator flex--item fc-green-400 py6 mtn8 d-none" data-s-tooltip-placement="right" title="Loading when this answer was accepted…" tabindex="0" role="note" aria-label="Accepted">
|
||
<div class="ta-center">
|
||
<svg aria-hidden="true" class="svg-icon iconCheckmarkLg" width="36" height="36" viewBox="0 0 36 36"><path d="m6 14 8 8L30 6v8L14 30l-8-8v-8Z"/></svg>
|
||
</div>
|
||
</div>
|
||
|
||
|
||
<a class="js-post-issue flex--item s-btn s-btn__unset c-pointer py6 mx-auto" href="/posts/32798562/timeline" data-shortcut="T" data-ks-title="timeline" data-controller="s-tooltip" data-s-tooltip-placement="right" title="Show activity on this post." aria-label="Timeline"><svg aria-hidden="true" class="mln2 mr0 svg-icon iconHistory" width="19" height="18" viewBox="0 0 19 18"><path d="M3 9a8 8 0 1 1 3.73 6.77L8.2 14.3A6 6 0 1 0 5 9l3.01-.01-4 4-4-4h3L3 9Zm7-4h1.01L11 9.36l3.22 2.1-.6.93L10 10V5Z"/></svg></a>
|
||
|
||
</div>
|
||
|
||
</div>
|
||
|
||
|
||
|
||
<div class="answercell post-layout--right">
|
||
|
||
<div class="s-prose js-post-body" itemprop="text">
|
||
<pre><code># given random variable X (house price) with population muy = 60, sigma = 40
|
||
import scipy as sc
|
||
import scipy.stats as sct
|
||
sc.version.full_version # 0.15.1
|
||
|
||
#a. Find P(X<50)
|
||
sct.norm.cdf(x=50,loc=60,scale=40) # 0.4012936743170763
|
||
|
||
#b. Find P(X>=50)
|
||
sct.norm.sf(x=50,loc=60,scale=40) # 0.5987063256829237
|
||
|
||
#c. Find P(60<=X<=80)
|
||
sct.norm.cdf(x=80,loc=60,scale=40) - sct.norm.cdf(x=60,loc=60,scale=40)
|
||
|
||
#d. how much top most 5% expensive house cost at least? or find x where P(X>=x) = 0.05
|
||
sct.norm.isf(q=0.05,loc=60,scale=40)
|
||
|
||
#e. how much top most 5% cheapest house cost at least? or find x where P(X<=x) = 0.05
|
||
sct.norm.ppf(q=0.05,loc=60,scale=40)
|
||
</code></pre>
|
||
</div>
|
||
<div class="mt24">
|
||
<div class="d-flex fw-wrap ai-start jc-end gs8 gsy">
|
||
<time itemprop="dateCreated" datetime="2015-09-26T15:04:38"></time>
|
||
<div class="flex--item mr16" style="flex: 1 1 100px;">
|
||
|
||
|
||
|
||
<div class="js-post-menu pt2" data-post-id="32798562" data-post-type-id="2">
|
||
|
||
<div class="d-flex gs8 s-anchors s-anchors__muted fw-wrap">
|
||
|
||
<div class="flex--item">
|
||
<a href="/a/32798562"
|
||
rel="nofollow"
|
||
itemprop="url"
|
||
class="js-share-link js-gps-track"
|
||
title="Short permalink to this answer"
|
||
data-gps-track="post.click({ item: 2, priv: 0, post_type: 2 })"
|
||
data-controller="se-share-sheet"
|
||
data-se-share-sheet-title="Share a link to this answer"
|
||
data-se-share-sheet-subtitle=""
|
||
data-se-share-sheet-post-type="answer"
|
||
data-se-share-sheet-social="facebook twitter devto"
|
||
data-se-share-sheet-location="2"
|
||
data-se-share-sheet-license-url="https%3a%2f%2fcreativecommons.org%2flicenses%2fby-sa%2f3.0%2f"
|
||
data-se-share-sheet-license-name="CC BY-SA 3.0"
|
||
data-s-popover-placement="bottom-start">Share</a>
|
||
</div>
|
||
|
||
|
||
|
||
<div class="flex--item">
|
||
<button type="button"
|
||
id="btnFollowPost-32798562" class="s-btn s-btn__link js-follow-post js-follow-answer js-gps-track"
|
||
data-gps-track="post.click({ item: 14, priv: 0, post_type: 2 })"
|
||
data-controller="s-tooltip " data-s-tooltip-placement="bottom"
|
||
data-s-popover-placement="bottom" aria-controls=""
|
||
title="Follow this answer to receive notifications">
|
||
Follow
|
||
</button>
|
||
</div>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
</div>
|
||
<div class="js-menu-popup-container"></div>
|
||
</div>
|
||
</div>
|
||
|
||
|
||
<div class="post-signature flex--item fl0">
|
||
<div class="user-info ">
|
||
<div class="user-action-time">
|
||
answered <span title='2015-09-26 15:04:38Z' class='relativetime'>Sep 26, 2015 at 15:04</span>
|
||
</div>
|
||
<div class="user-gravatar32">
|
||
<a href="/users/1125621/o0omycomputero0o"><div class="gravatar-wrapper-32"><img src="https://www.gravatar.com/avatar/c1b3328f06ea4ab079677388658dae10?s=64&d=identicon&r=PG" alt="o0omycomputero0o's user avatar" width="32" height="32" class="bar-sm"></div></a>
|
||
</div>
|
||
<div class="user-details" itemprop="author" itemscope itemtype="http://schema.org/Person">
|
||
<a href="/users/1125621/o0omycomputero0o">o0omycomputero0o</a><span class="d-none" itemprop="name">o0omycomputero0o</span>
|
||
<div class="-flair">
|
||
<span class="reputation-score" title="reputation score " dir="ltr">3,376</span><span title="4 gold badges" aria-hidden="true"><span class="badge1"></span><span class="badgecount">4</span></span><span class="v-visible-sr">4 gold badges</span><span title="32 silver badges" aria-hidden="true"><span class="badge2"></span><span class="badgecount">32</span></span><span class="v-visible-sr">32 silver badges</span><span title="45 bronze badges" aria-hidden="true"><span class="badge3"></span><span class="badgecount">45</span></span><span class="v-visible-sr">45 bronze badges</span>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
|
||
|
||
</div>
|
||
</div>
|
||
|
||
|
||
</div>
|
||
|
||
</div>
|
||
|
||
|
||
|
||
|
||
<span class="d-none" itemprop="commentCount">1</span>
|
||
<div class="post-layout--right js-post-comments-component">
|
||
<div id="comments-32798562" class="comments js-comments-container bt bc-black-200 mt12 " data-post-id="32798562" data-min-length="15">
|
||
<ul class="comments-list js-comments-list"
|
||
data-remaining-comments-count="0"
|
||
data-canpost="false"
|
||
data-cansee="true"
|
||
data-comments-unavailable="false"
|
||
data-addlink-disabled="true">
|
||
|
||
<li id="comment-76824582" class="comment js-comment " data-comment-id="76824582" data-comment-owner-id="4815313" data-comment-score="6">
|
||
<div class="js-comment-actions comment-actions">
|
||
<div class="comment-score js-comment-score js-comment-edit-hide">
|
||
<span title="number of 'useful comment' votes received"
|
||
class="warm">6</span>
|
||
</div>
|
||
</div>
|
||
<div class="comment-text js-comment-text-and-form">
|
||
<div class="comment-body js-comment-edit-hide">
|
||
|
||
<span class="comment-copy">PS: You can assume 'loc' as 'mean' and 'scale' as 'standard deviation'</span>
|
||
|
||
<div class="d-inline-flex ai-center">
|
||
– <a href="/users/4815313/suresh2692"
|
||
title="3,873 reputation"
|
||
class="comment-user">Suresh2692</a>
|
||
</div>
|
||
<span class="comment-date" dir="ltr"><span title='2017-07-05 11:11:41Z, License: CC BY-SA 3.0' class='relativetime-clean'>Jul 5, 2017 at 11:11</span></span>
|
||
</div>
|
||
</div>
|
||
</li>
|
||
|
||
</ul>
|
||
</div>
|
||
|
||
<div id="comments-link-32798562" data-rep=50 data-anon=true>
|
||
<a class="js-add-link comments-link disabled-link" title="Use comments to ask for more information or suggest improvements. Avoid comments like “+1” or “thanks”." href="#" role="button">Add a comment</a>
|
||
<span class="js-link-separator dno"> | </span>
|
||
<a class="js-show-link comments-link dno" title="Expand to show all comments on this post" href=# onclick="" role="button"></a>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
|
||
|
||
<aside class="s-notice s-notice__info post-notice js-post-notice mb16" role="status">
|
||
<div class="d-flex fd-column fw-nowrap">
|
||
<div class="d-flex fw-nowrap">
|
||
<div class="flex--item mr8">
|
||
<svg aria-hidden="true" class="svg-icon iconFire" width="18" height="18" viewBox="0 0 18 18"><path fill="#FF6700" d="M13.18 9c-.8.33-1.46.6-1.97 1.3A9.21 9.21 0 0 0 10 13.89a10 10 0 0 0 1.32-.8 2.53 2.53 0 0 1-.63 2.91h.78a3 3 0 0 0 1.66-.5 4.15 4.15 0 0 0 1.26-1.61c.4-.96.47-1.7.55-2.73.05-1.24-.1-2.49-.46-3.68a2 2 0 0 1-.4.91 2.1 2.1 0 0 1-.9.62Z" opacity=".6"/><path fill="#EF2E2E" d="M10.4 12.11a7.1 7.1 0 0 1 .78-1.76c.3-.47.81-.8 1.37-1.08 0 0-.05-3.27-1.55-5.27-1.5-2-3.37-2.75-4.95-2.61 0 0 4.19 2.94 1.18 5.67-2.14 1.92-3.64 3.81-3.1 5.94a4.14 4.14 0 0 0 3.1 3 4.05 4.05 0 0 1 1.08-3.89C9.42 10.92 8 9.79 8 9.79c.67.02 1.3.28 1.81.72a2 2 0 0 1 .58 1.6Z"/></svg>
|
||
</div>
|
||
<div class="flex--item wmn0 fl1 lh-lg">
|
||
<div class="flex--item fl1 lh-lg">
|
||
<div>
|
||
<b><a href="/help/privileges/protect-questions">Highly active question</a></b>. Earn 10 reputation (not counting the <a href="https://meta.stackexchange.com/questions/141648/what-is-the-association-bonus-and-how-does-it-work">association bonus</a>) in order to answer this question. The reputation requirement helps protect this question from spam and non-answer activity.
|
||
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
</aside>
|
||
|
||
|
||
|
||
<h2 class="bottom-notice" data-loc="1">
|
||
<div>
|
||
Not the answer you're looking for? Browse other questions tagged <ul class='ml0 list-ls-none js-post-tag-list-wrapper d-inline'><li class='d-inline mr4 js-post-tag-list-item'><a href="/questions/tagged/python" class="post-tag" title="show questions tagged 'python'" aria-label="show questions tagged 'python'" rel="tag" aria-labelledby="tag-python-tooltip-container">python</a></li><li class='d-inline mr4 js-post-tag-list-item'><a href="/questions/tagged/scipy" class="post-tag" title="show questions tagged 'scipy'" aria-label="show questions tagged 'scipy'" rel="tag" aria-labelledby="tag-scipy-tooltip-container">scipy</a></li><li class='d-inline mr4 js-post-tag-list-item'><a href="/questions/tagged/normal-distribution" class="post-tag" title="show questions tagged 'normal-distribution'" aria-label="show questions tagged 'normal-distribution'" rel="tag" aria-labelledby="tag-normal-distribution-tooltip-container">normal-distribution</a></li></ul> or <a href="/questions/ask">ask your own question</a>. </div>
|
||
</h2>
|
||
</div>
|
||
</div>
|
||
|
||
|
||
<div id="sidebar" class="show-votes" role="complementary" aria-label="sidebar">
|
||
|
||
|
||
|
||
<div class="s-sidebarwidget s-sidebarwidget__yellow s-anchors s-anchors__grayscale mb16" data-tracker="cb=1">
|
||
<ul class="d-block p0 m0">
|
||
<li class="s-sidebarwidget--header s-sidebarwidget__small-bold-text d-flex fc-black-500 d:fc-black-600 bb bbw1">
|
||
The Overflow Blog
|
||
</li>
|
||
<li class="s-sidebarwidget--item d-flex px16">
|
||
<div class="flex--item1 fl-shrink0">
|
||
<svg aria-hidden="true" class="va-text-top svg-icon iconPencilSm" width="14" height="14" viewBox="0 0 14 14"><path fill="#F1B600" d="m2 10.12 6.37-6.43 1.88 1.88L3.88 12H2v-1.88Z"/><path fill="#E87C87" d="m11.1 1.71 1.13 1.12c.2.2.2.51 0 .71L11.1 4.7 9.21 2.86l1.17-1.15c.2-.2.51-.2.71 0Z"/></svg> </div>
|
||
<div class="flex--item wmn0 ow-break-word">
|
||
<a href="https://stackoverflow.blog/2023/11/29/how-to-scale-a-business-ready-ai-platform-with-watsonx-q-and-a-with-ibm/" class="js-gps-track" data-ga="["community bulletin board","The Overflow Blog","https://stackoverflow.blog/2023/11/29/how-to-scale-a-business-ready-ai-platform-with-watsonx-q-and-a-with-ibm/",null,null]" data-gps-track="communitybulletin.click({ priority: 1, position: 0 })">How to scale a business-ready AI platform with watsonx: Q&A with IBM</a>
|
||
<div class="fc-black-400 fs-italic">sponsored post</div>
|
||
</div>
|
||
</li>
|
||
<li class="s-sidebarwidget--item d-flex px16">
|
||
<div class="flex--item1 fl-shrink0">
|
||
<svg aria-hidden="true" class="va-text-top svg-icon iconPencilSm" width="14" height="14" viewBox="0 0 14 14"><path fill="#F1B600" d="m2 10.12 6.37-6.43 1.88 1.88L3.88 12H2v-1.88Z"/><path fill="#E87C87" d="m11.1 1.71 1.13 1.12c.2.2.2.51 0 .71L11.1 4.7 9.21 2.86l1.17-1.15c.2-.2.51-.2.71 0Z"/></svg> </div>
|
||
<div class="flex--item wmn0 ow-break-word">
|
||
<a href="https://stackoverflow.blog/2023/12/01/will-developers-return-to-hostile-offices/" class="js-gps-track" data-ga="["community bulletin board","The Overflow Blog","https://stackoverflow.blog/2023/12/01/will-developers-return-to-hostile-offices/",null,null]" data-gps-track="communitybulletin.click({ priority: 1, position: 1 })">Will developers return to hostile offices?</a>
|
||
</div>
|
||
</li>
|
||
<li class="s-sidebarwidget--header s-sidebarwidget__small-bold-text d-flex fc-black-500 d:fc-black-600 bb bbw1">
|
||
Featured on Meta
|
||
</li>
|
||
<li class="s-sidebarwidget--item d-flex px16">
|
||
<div class="flex--item1 fl-shrink0">
|
||
<div class="favicon favicon-stackexchangemeta" title="Meta Stack Exchange"></div> </div>
|
||
<div class="flex--item wmn0 ow-break-word">
|
||
<a href="https://meta.stackexchange.com/questions/394860/were-rolling-back-the-changes-to-the-acceptable-use-policy-aup" class="js-gps-track" data-ga="["community bulletin board","Featured on Meta","https://meta.stackexchange.com/questions/394860/were-rolling-back-the-changes-to-the-acceptable-use-policy-aup",null,null]" data-gps-track="communitybulletin.click({ priority: 3, position: 2 })">We're rolling back the changes to the Acceptable Use Policy (AUP)</a>
|
||
</div>
|
||
</li>
|
||
<li class="s-sidebarwidget--item d-flex px16">
|
||
<div class="flex--item1 fl-shrink0">
|
||
<div class="favicon favicon-stackexchangemeta" title="Meta Stack Exchange"></div> </div>
|
||
<div class="flex--item wmn0 ow-break-word">
|
||
<a href="https://meta.stackexchange.com/questions/395062/seeking-feedback-on-tag-colors-update" class="js-gps-track" data-ga="["community bulletin board","Featured on Meta","https://meta.stackexchange.com/questions/395062/seeking-feedback-on-tag-colors-update",null,null]" data-gps-track="communitybulletin.click({ priority: 3, position: 3 })">Seeking feedback on tag colors update</a>
|
||
</div>
|
||
</li>
|
||
<li class="s-sidebarwidget--item d-flex px16">
|
||
<div class="flex--item1 fl-shrink0">
|
||
<div class="favicon favicon-stackoverflowmeta" title="Meta Stack Overflow"></div> </div>
|
||
<div class="flex--item wmn0 ow-break-word">
|
||
<a href="https://meta.stackoverflow.com/questions/427199/collectives-updates-new-features-and-ways-to-get-started-with-discussions" class="js-gps-track" data-ga="["community bulletin board","Featured on Meta","https://meta.stackoverflow.com/questions/427199/collectives-updates-new-features-and-ways-to-get-started-with-discussions",null,null]" data-gps-track="communitybulletin.click({ priority: 6, position: 4 })">Collectives updates: new features and ways to get started with Discussions</a>
|
||
</div>
|
||
</li>
|
||
<li class="s-sidebarwidget--item d-flex px16">
|
||
<div class="flex--item1 fl-shrink0">
|
||
<div class="favicon favicon-stackoverflowmeta" title="Meta Stack Overflow"></div> </div>
|
||
<div class="flex--item wmn0 ow-break-word">
|
||
<a href="https://meta.stackoverflow.com/questions/427335/overflowai-alpha-invitation-emails-were-distributed-in-error-nov-28th" class="js-gps-track" data-ga="["community bulletin board","Featured on Meta","https://meta.stackoverflow.com/questions/427335/overflowai-alpha-invitation-emails-were-distributed-in-error-nov-28th",null,null]" data-gps-track="communitybulletin.click({ priority: 6, position: 5 })">OverflowAI Alpha invitation emails were distributed in error Nov 28th</a>
|
||
</div>
|
||
</li>
|
||
<li class="s-sidebarwidget--item d-flex px16">
|
||
<div class="flex--item1 fl-shrink0">
|
||
<div class="favicon favicon-stackoverflowmeta" title="Meta Stack Overflow"></div> </div>
|
||
<div class="flex--item wmn0 ow-break-word">
|
||
<a href="https://meta.stackoverflow.com/questions/421831/temporary-policy-generative-ai-e-g-chatgpt-is-banned" class="js-gps-track" data-ga="["community bulletin board","Featured on Meta","https://meta.stackoverflow.com/questions/421831/temporary-policy-generative-ai-e-g-chatgpt-is-banned",null,null]" data-gps-track="communitybulletin.click({ priority: 6, position: 6 })">Temporary policy: Generative AI (e.g., ChatGPT) is banned</a>
|
||
</div>
|
||
</li>
|
||
</ul>
|
||
</div>
|
||
|
||
|
||
<div class="js-zone-container zone-container-sidebar">
|
||
<div id="dfp-tsb" class="everyonelovesstackoverflow everyoneloves__top-sidebar"></div>
|
||
<div class="js-report-ad-button-container " style="width: 300px"></div>
|
||
</div>
|
||
<div class="js-zone-container zone-container-sidebar">
|
||
<div id="dfp-msb" class="everyonelovesstackoverflow everyoneloves__mid-sidebar"></div>
|
||
<div class="js-report-ad-button-container " style="width: 300px"></div>
|
||
</div>
|
||
<div id="hireme"></div> <div class="module sidebar-linked">
|
||
<h4 id="h-linked">Linked</h4>
|
||
<div class="linked" data-tracker="lq=1">
|
||
<div class="spacer js-gps-track" data-gps-track="linkedquestion.click({ source_post_id: 20626994, target_question_id: 29369776, position: 0 })">
|
||
<a href="/q/29369776" title="Question score (upvotes - downvotes)">
|
||
<div class="answer-votes default">9</div>
|
||
</a>
|
||
<a href="/questions/29369776/what-is-the-sci-numpython-equivalent-to-matlabs-norminv-normal-inverse-cumu?noredirect=1" class="question-hyperlink">What is the [Sci/Num]Python equivalent to Matlabs "norminv" (Normal inverse cumulative distribution function)</a>
|
||
</div>
|
||
<div class="spacer js-gps-track" data-gps-track="linkedquestion.click({ source_post_id: 20626994, target_question_id: 49115700, position: 1 })">
|
||
<a href="/q/49115700" title="Question score (upvotes - downvotes)">
|
||
<div class="answer-votes default">0</div>
|
||
</a>
|
||
<a href="/questions/49115700/python-equivalent-of-matlabs-qfuncinv?noredirect=1" class="question-hyperlink">Python equivalent of MATLAB's qfuncinv()</a>
|
||
</div>
|
||
<div class="spacer js-gps-track" data-gps-track="linkedquestion.click({ source_post_id: 20626994, target_question_id: 31648552, position: 2 })">
|
||
<a href="/q/31648552" title="Question score (upvotes - downvotes)">
|
||
<div class="answer-votes default">0</div>
|
||
</a>
|
||
<a href="/questions/31648552/how-can-i-get-the-value-in-normal-distribution-in-python?noredirect=1" class="question-hyperlink">How can I get the value in normal distribution in python</a>
|
||
</div>
|
||
<div class="spacer js-gps-track" data-gps-track="linkedquestion.click({ source_post_id: 20626994, target_question_id: 60699836, position: 3 })">
|
||
<a href="/q/60699836" title="Question score (upvotes - downvotes)">
|
||
<div class="answer-votes default">24</div>
|
||
</a>
|
||
<a href="/questions/60699836/how-to-use-norm-ppf?noredirect=1" class="question-hyperlink">How to use norm.ppf()?</a>
|
||
</div>
|
||
<div class="spacer js-gps-track" data-gps-track="linkedquestion.click({ source_post_id: 20626994, target_question_id: 31910485, position: 4 })">
|
||
<a href="/q/31910485" title="Question score (upvotes - downvotes)">
|
||
<div class="answer-votes answered-accepted default">9</div>
|
||
</a>
|
||
<a href="/questions/31910485/quantile-functions-in-python?noredirect=1" class="question-hyperlink">Quantile functions in Python</a>
|
||
</div>
|
||
<div class="spacer js-gps-track" data-gps-track="linkedquestion.click({ source_post_id: 20626994, target_question_id: 37794648, position: 5 })">
|
||
<a href="/q/37794648" title="Question score (upvotes - downvotes)">
|
||
<div class="answer-votes default">2</div>
|
||
</a>
|
||
<a href="/questions/37794648/equivalent-of-matlabs-gaminv-in-python?noredirect=1" class="question-hyperlink">equivalent of Matlab's gaminv in python</a>
|
||
</div>
|
||
<div class="spacer js-gps-track" data-gps-track="linkedquestion.click({ source_post_id: 20626994, target_question_id: 75820210, position: 6 })">
|
||
<a href="/q/75820210" title="Question score (upvotes - downvotes)">
|
||
<div class="answer-votes default">0</div>
|
||
</a>
|
||
<a href="/questions/75820210/call-scipy-from-matlab-using-python?noredirect=1" class="question-hyperlink">Call SciPy from MATLAB using Python</a>
|
||
</div>
|
||
<div class="spacer js-gps-track" data-gps-track="linkedquestion.click({ source_post_id: 20626994, target_question_id: 67955360, position: 7 })">
|
||
<a href="/q/67955360" title="Question score (upvotes - downvotes)">
|
||
<div class="answer-votes default">1</div>
|
||
</a>
|
||
<a href="/questions/67955360/inverse-of-cumulative-density-function-for-multivariate-normal-distribution?noredirect=1" class="question-hyperlink">Inverse of cumulative density function for Multivariate Normal Distribution</a>
|
||
</div>
|
||
<div class="spacer js-gps-track" data-gps-track="linkedquestion.click({ source_post_id: 20626994, target_question_id: 49172935, position: 8 })">
|
||
<a href="/q/49172935" title="Question score (upvotes - downvotes)">
|
||
<div class="answer-votes default">0</div>
|
||
</a>
|
||
<a href="/questions/49172935/typeerror-ufunc-ndtri-not-supported-for-the-input-types?noredirect=1" class="question-hyperlink">TypeError: ufunc 'ndtri' not supported for the input types</a>
|
||
</div>
|
||
<div class="spacer js-gps-track" data-gps-track="linkedquestion.click({ source_post_id: 20626994, target_question_id: 49045372, position: 9 })">
|
||
<a href="/q/49045372" title="Question score (upvotes - downvotes)">
|
||
<div class="answer-votes default">0</div>
|
||
</a>
|
||
<a href="/questions/49045372/how-to-correctly-calculate-the-median-of-a-probability-function?noredirect=1" class="question-hyperlink">How to correctly calculate the MEDIAN of a probability function?</a>
|
||
</div>
|
||
<div class="spacer more ml32 pl16 pt8">
|
||
<a href="/questions/linked/20626994">See more linked questions</a>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
|
||
|
||
|
||
|
||
|
||
<div class="module sidebar-related">
|
||
<h4 id="h-related">Related</h4>
|
||
<div class="related js-gps-related-questions" data-tracker="rq=3">
|
||
<div class="spacer" data-question-id="19589191">
|
||
<a href="/q/19589191" title="Question score (upvotes - downvotes)" >
|
||
<div class="answer-votes answered-accepted default">16</div>
|
||
</a>
|
||
<a href="/questions/19589191/the-reverse-inverse-of-the-normal-distribution-function-in-r" class="question-hyperlink">The reverse/inverse of the normal distribution function in R</a>
|
||
</div>
|
||
<div class="spacer" data-question-id="22264046">
|
||
<a href="/q/22264046" title="Question score (upvotes - downvotes)" >
|
||
<div class="answer-votes answered-accepted default">5</div>
|
||
</a>
|
||
<a href="/questions/22264046/inverse-probability-density-function" class="question-hyperlink">Inverse probability density function</a>
|
||
</div>
|
||
<div class="spacer" data-question-id="37023041">
|
||
<a href="/q/37023041" title="Question score (upvotes - downvotes)" >
|
||
<div class="answer-votes answered-accepted default">5</div>
|
||
</a>
|
||
<a href="/questions/37023041/how-to-calculate-the-inverse-of-the-log-normal-cumulative-distribution-function" class="question-hyperlink">How to calculate the inverse of the log normal cumulative distribution function in python?</a>
|
||
</div>
|
||
<div class="spacer" data-question-id="44983175">
|
||
<a href="/q/44983175" title="Question score (upvotes - downvotes)" >
|
||
<div class="answer-votes default">2</div>
|
||
</a>
|
||
<a href="/questions/44983175/calculate-inverse-cdf-from-a-sample-of-data" class="question-hyperlink">Calculate inverse CDF from a sample of data</a>
|
||
</div>
|
||
<div class="spacer" data-question-id="46199199">
|
||
<a href="/q/46199199" title="Question score (upvotes - downvotes)" >
|
||
<div class="answer-votes default">0</div>
|
||
</a>
|
||
<a href="/questions/46199199/how-to-calculate-normal-inverse-cumulative-distribution-function-efficiently-in" class="question-hyperlink">How to calculate normal inverse cumulative distribution function efficiently in Python</a>
|
||
</div>
|
||
<div class="spacer" data-question-id="47417986">
|
||
<a href="/q/47417986" title="Question score (upvotes - downvotes)" >
|
||
<div class="answer-votes answered-accepted default">11</div>
|
||
</a>
|
||
<a href="/questions/47417986/using-scipy-gaussian-kernel-density-estimation-to-calculate-cdf-inverse" class="question-hyperlink">Using scipy gaussian kernel density estimation to calculate CDF inverse</a>
|
||
</div>
|
||
<div class="spacer" data-question-id="59012763">
|
||
<a href="/q/59012763" title="Question score (upvotes - downvotes)" >
|
||
<div class="answer-votes default">4</div>
|
||
</a>
|
||
<a href="/questions/59012763/how-to-calculate-cumulative-normal-distribution-in-python" class="question-hyperlink">How to calculate cumulative normal distribution in python?</a>
|
||
</div>
|
||
<div class="spacer" data-question-id="60807221">
|
||
<a href="/q/60807221" title="Question score (upvotes - downvotes)" >
|
||
<div class="answer-votes answered-accepted default">0</div>
|
||
</a>
|
||
<a href="/questions/60807221/why-not-the-inverse-of-inverse-function-of-a-standard-normal-distribution-calcul" class="question-hyperlink">Why not the inverse of inverse function of a standard normal distribution calculation at scipy.stats python identical?</a>
|
||
</div>
|
||
<div class="spacer" data-question-id="62899379">
|
||
<a href="/q/62899379" title="Question score (upvotes - downvotes)" >
|
||
<div class="answer-votes answered-accepted default">0</div>
|
||
</a>
|
||
<a href="/questions/62899379/inverse-normal-random-number-generation-in-python" class="question-hyperlink">Inverse normal random number generation in python?</a>
|
||
</div>
|
||
<div class="spacer" data-question-id="70690215">
|
||
<a href="/q/70690215" title="Question score (upvotes - downvotes)" >
|
||
<div class="answer-votes default">0</div>
|
||
</a>
|
||
<a href="/questions/70690215/python-reverse-probability-look-up-for-normal-distribution" class="question-hyperlink">python reverse probability look up for normal distribution</a>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<script type="text/javascript">
|
||
$(document).ready(function() {
|
||
$(".js-gps-related-questions .spacer").click(function () {
|
||
fireRelatedEvent($(this).index() + 1, $(this).data('question-id'));
|
||
});
|
||
|
||
function fireRelatedEvent(position, questionId) {
|
||
StackExchange.using("gps", function() {
|
||
StackExchange.gps.track('related_questions.click',
|
||
{
|
||
position: position,
|
||
originQuestionId: 20626994,
|
||
relatedQuestionId: +questionId,
|
||
location: 'sidebar',
|
||
source: 'Baseline'
|
||
});
|
||
});
|
||
}
|
||
});
|
||
</script>
|
||
|
||
|
||
|
||
<div id="hot-network-questions" class="module tex2jax_ignore">
|
||
<h4>
|
||
<a href="https://stackexchange.com/questions?tab=hot"
|
||
class="js-gps-track s-link s-link__inherit"
|
||
data-gps-track="posts_hot_network.click({ item_type:1, location:11 })">
|
||
Hot Network Questions
|
||
</a>
|
||
</h4>
|
||
<ul>
|
||
<li >
|
||
<div class="favicon favicon-academia" title="Academia Stack Exchange"></div><a href="https://academia.stackexchange.com/questions/204530/advisor-student-collaboration-or-lack-thereof-and-paper-authorship-in-mathemat" class="js-gps-track question-hyperlink mb0" data-gps-track="site.switch({ item_type:11, target_site:415 }); posts_hot_network.click({ item_type:2, location:11 })">
|
||
Advisor-student collaboration (or lack thereof) and paper authorship in mathematics: how does it work?
|
||
</a>
|
||
|
||
</li>
|
||
<li >
|
||
<div class="favicon favicon-physics" title="Physics Stack Exchange"></div><a href="https://physics.stackexchange.com/questions/790960/help-with-strange-notation-involving-fractions-of-tensors" class="js-gps-track question-hyperlink mb0" data-gps-track="site.switch({ item_type:11, target_site:151 }); posts_hot_network.click({ item_type:2, location:11 })">
|
||
Help with strange notation involving fractions of tensors
|
||
</a>
|
||
|
||
</li>
|
||
<li >
|
||
<div class="favicon favicon-physics" title="Physics Stack Exchange"></div><a href="https://physics.stackexchange.com/questions/790983/why-isnt-the-dark-matter-in-the-bullet-cluster-supermassive-black-holes" class="js-gps-track question-hyperlink mb0" data-gps-track="site.switch({ item_type:11, target_site:151 }); posts_hot_network.click({ item_type:2, location:11 })">
|
||
Why isn't the "Dark Matter" in the Bullet Cluster supermassive black holes?
|
||
</a>
|
||
|
||
</li>
|
||
<li >
|
||
<div class="favicon favicon-music" title="Music: Practice & Theory Stack Exchange"></div><a href="https://music.stackexchange.com/questions/132863/how-can-i-dampen-the-sound-of-maracas" class="js-gps-track question-hyperlink mb0" data-gps-track="site.switch({ item_type:11, target_site:240 }); posts_hot_network.click({ item_type:2, location:11 })">
|
||
How can I dampen the sound of maracas?
|
||
</a>
|
||
|
||
</li>
|
||
<li >
|
||
<div class="favicon favicon-fitness" title="Physical Fitness Stack Exchange"></div><a href="https://fitness.stackexchange.com/questions/46695/why-does-my-pace-improve-during-a-low-heart-rate-hrr-zone-2-10k" class="js-gps-track question-hyperlink mb0" data-gps-track="site.switch({ item_type:11, target_site:216 }); posts_hot_network.click({ item_type:2, location:11 })">
|
||
Why does my pace improve during a low heart rate (HRR zone 2) 10k?
|
||
</a>
|
||
|
||
</li>
|
||
<li class="dno js-hidden">
|
||
<div class="favicon favicon-scifi" title="Science Fiction & Fantasy Stack Exchange"></div><a href="https://scifi.stackexchange.com/questions/281402/bonne-mammif%c3%a9ration-short-story" class="js-gps-track question-hyperlink mb0" data-gps-track="site.switch({ item_type:11, target_site:186 }); posts_hot_network.click({ item_type:2, location:11 })">
|
||
"Bonne mammifération" short story
|
||
</a>
|
||
|
||
</li>
|
||
<li class="dno js-hidden">
|
||
<div class="favicon favicon-cooking" title="Seasoned Advice"></div><a href="https://cooking.stackexchange.com/questions/125981/yield-of-construction-gingerbread" class="js-gps-track question-hyperlink mb0" data-gps-track="site.switch({ item_type:11, target_site:49 }); posts_hot_network.click({ item_type:2, location:11 })">
|
||
Yield of construction gingerbread
|
||
</a>
|
||
|
||
</li>
|
||
<li class="dno js-hidden">
|
||
<div class="favicon favicon-langdev" title="Programming Language Design and Implementation Stack Exchange"></div><a href="https://langdev.stackexchange.com/questions/3271/why-are-volatile-objects-so-difficult-to-work-with-in-c" class="js-gps-track question-hyperlink mb0" data-gps-track="site.switch({ item_type:11, target_site:716 }); posts_hot_network.click({ item_type:2, location:11 })">
|
||
Why are volatile objects so difficult to work with in C++?
|
||
</a>
|
||
|
||
</li>
|
||
<li class="dno js-hidden">
|
||
<div class="favicon favicon-philosophy" title="Philosophy Stack Exchange"></div><a href="https://philosophy.stackexchange.com/questions/105878/what-does-everything-mean" class="js-gps-track question-hyperlink mb0" data-gps-track="site.switch({ item_type:11, target_site:265 }); posts_hot_network.click({ item_type:2, location:11 })">
|
||
What does "everything" mean?
|
||
</a>
|
||
|
||
</li>
|
||
<li class="dno js-hidden">
|
||
<div class="favicon favicon-diy" title="Home Improvement Stack Exchange"></div><a href="https://diy.stackexchange.com/questions/288245/boiler-might-have-caused-water-intrusion-who-do-i-call" class="js-gps-track question-hyperlink mb0" data-gps-track="site.switch({ item_type:11, target_site:73 }); posts_hot_network.click({ item_type:2, location:11 })">
|
||
Boiler *might* have caused water intrusion... who do I call?
|
||
</a>
|
||
|
||
</li>
|
||
<li class="dno js-hidden">
|
||
<div class="favicon favicon-blender" title="Blender Stack Exchange"></div><a href="https://blender.stackexchange.com/questions/306159/how-to-render-an-image-the-exact-way-its-displayed-in-the-vrendered-preview" class="js-gps-track question-hyperlink mb0" data-gps-track="site.switch({ item_type:11, target_site:502 }); posts_hot_network.click({ item_type:2, location:11 })">
|
||
How to render an image the exact way its displayed in the vrendered preview
|
||
</a>
|
||
|
||
</li>
|
||
<li class="dno js-hidden">
|
||
<div class="favicon favicon-mathoverflow" title="MathOverflow"></div><a href="https://mathoverflow.net/questions/459586/what-are-some-toy-models-for-the-stable-homotopy-groups-of-spheres" class="js-gps-track question-hyperlink mb0" data-gps-track="site.switch({ item_type:11, target_site:504 }); posts_hot_network.click({ item_type:2, location:11 })">
|
||
What are some toy models for the stable homotopy groups of spheres?
|
||
</a>
|
||
|
||
</li>
|
||
<li class="dno js-hidden">
|
||
<div class="favicon favicon-worldbuilding" title="Worldbuilding Stack Exchange"></div><a href="https://worldbuilding.stackexchange.com/questions/251570/is-a-world-laser-possible" class="js-gps-track question-hyperlink mb0" data-gps-track="site.switch({ item_type:11, target_site:579 }); posts_hot_network.click({ item_type:2, location:11 })">
|
||
Is a world laser possible?
|
||
</a>
|
||
|
||
</li>
|
||
<li class="dno js-hidden">
|
||
<div class="favicon favicon-math" title="Mathematics Stack Exchange"></div><a href="https://math.stackexchange.com/questions/4819062/does-this-local-ring-have-a-name" class="js-gps-track question-hyperlink mb0" data-gps-track="site.switch({ item_type:11, target_site:69 }); posts_hot_network.click({ item_type:2, location:11 })">
|
||
Does this local ring have a name?
|
||
</a>
|
||
|
||
</li>
|
||
<li class="dno js-hidden">
|
||
<div class="favicon favicon-ell" title="English Language Learners Stack Exchange"></div><a href="https://ell.stackexchange.com/questions/344819/the-proof-of-the-pudding-is-in-the-eating" class="js-gps-track question-hyperlink mb0" data-gps-track="site.switch({ item_type:11, target_site:481 }); posts_hot_network.click({ item_type:2, location:11 })">
|
||
the proof of <the> pudding is in the eating
|
||
</a>
|
||
|
||
</li>
|
||
<li class="dno js-hidden">
|
||
<div class="favicon favicon-cs" title="Computer Science Stack Exchange"></div><a href="https://cs.stackexchange.com/questions/163261/find-minimum-transformation-between-multisets-of-lists-of-cards" class="js-gps-track question-hyperlink mb0" data-gps-track="site.switch({ item_type:11, target_site:419 }); posts_hot_network.click({ item_type:2, location:11 })">
|
||
Find Minimum Transformation Between Multisets of Lists of Cards
|
||
</a>
|
||
|
||
</li>
|
||
<li class="dno js-hidden">
|
||
<div class="favicon favicon-travel" title="Travel Stack Exchange"></div><a href="https://travel.stackexchange.com/questions/184906/filter-airbnb-rooms-for-eiffel-tower-view" class="js-gps-track question-hyperlink mb0" data-gps-track="site.switch({ item_type:11, target_site:273 }); posts_hot_network.click({ item_type:2, location:11 })">
|
||
Filter Airbnb rooms for Eiffel tower view
|
||
</a>
|
||
|
||
</li>
|
||
<li class="dno js-hidden">
|
||
<div class="favicon favicon-electronics" title="Electrical Engineering Stack Exchange"></div><a href="https://electronics.stackexchange.com/questions/691397/how-can-prevent-the-source-voltage-from-dropping-when-using-a-555-timer" class="js-gps-track question-hyperlink mb0" data-gps-track="site.switch({ item_type:11, target_site:135 }); posts_hot_network.click({ item_type:2, location:11 })">
|
||
How can prevent the source voltage from dropping when using a 555 timer
|
||
</a>
|
||
|
||
</li>
|
||
<li class="dno js-hidden">
|
||
<div class="favicon favicon-unix" title="Unix & Linux Stack Exchange"></div><a href="https://unix.stackexchange.com/questions/762893/two-ssh-output-as-awk-input" class="js-gps-track question-hyperlink mb0" data-gps-track="site.switch({ item_type:11, target_site:106 }); posts_hot_network.click({ item_type:2, location:11 })">
|
||
Two ssh output as awk input
|
||
</a>
|
||
|
||
</li>
|
||
<li class="dno js-hidden">
|
||
<div class="favicon favicon-codereview" title="Code Review Stack Exchange"></div><a href="https://codereview.stackexchange.com/questions/288198/advent-of-code-2023-day-2-in-pure-bash" class="js-gps-track question-hyperlink mb0" data-gps-track="site.switch({ item_type:11, target_site:196 }); posts_hot_network.click({ item_type:2, location:11 })">
|
||
Advent of code 2023 day 2 in pure Bash
|
||
</a>
|
||
|
||
</li>
|
||
<li class="dno js-hidden">
|
||
<div class="favicon favicon-worldbuilding" title="Worldbuilding Stack Exchange"></div><a href="https://worldbuilding.stackexchange.com/questions/251592/assuming-other-variables-are-good-could-earth-plants-survive-the-light-intensit" class="js-gps-track question-hyperlink mb0" data-gps-track="site.switch({ item_type:11, target_site:579 }); posts_hot_network.click({ item_type:2, location:11 })">
|
||
Assuming other variables are good, could earth plants survive the light intensity on the surface of Mercury?
|
||
</a>
|
||
|
||
</li>
|
||
<li class="dno js-hidden">
|
||
<div class="favicon favicon-codegolf" title="Code Golf Stack Exchange"></div><a href="https://codegolf.stackexchange.com/questions/267235/ungolf-the-wind" class="js-gps-track question-hyperlink mb0" data-gps-track="site.switch({ item_type:11, target_site:200 }); posts_hot_network.click({ item_type:2, location:11 })">
|
||
Ungolf the Wind
|
||
</a>
|
||
|
||
</li>
|
||
<li class="dno js-hidden">
|
||
<div class="favicon favicon-puzzling" title="Puzzling Stack Exchange"></div><a href="https://puzzling.stackexchange.com/questions/123463/pse-advent-calendar-2023-day-3-24-dangerous-doors" class="js-gps-track question-hyperlink mb0" data-gps-track="site.switch({ item_type:11, target_site:559 }); posts_hot_network.click({ item_type:2, location:11 })">
|
||
PSE Advent Calendar 2023 (Day 3): 24 dangerous doors
|
||
</a>
|
||
|
||
</li>
|
||
<li class="dno js-hidden">
|
||
<div class="favicon favicon-diy" title="Home Improvement Stack Exchange"></div><a href="https://diy.stackexchange.com/questions/288221/if-i-cut-out-a-square-of-drywall-for-access-should-i-tape-the-seams-when-i-put" class="js-gps-track question-hyperlink mb0" data-gps-track="site.switch({ item_type:11, target_site:73 }); posts_hot_network.click({ item_type:2, location:11 })">
|
||
If I cut out a square of drywall for access, should I tape the seams when I put it back?
|
||
</a>
|
||
|
||
</li>
|
||
</ul>
|
||
|
||
<a href="#"
|
||
class="show-more js-show-more js-gps-track"
|
||
data-gps-track="posts_hot_network.click({ item_type:3, location:11 })">
|
||
more hot questions
|
||
</a>
|
||
</div>
|
||
|
||
<div id="feed-link" class="js-feed-link">
|
||
<a href="/feeds/question/20626994" title="Feed of this question and its answers">
|
||
<svg aria-hidden="true" class="fc-orange-400 svg-icon iconRss" width="18" height="18" viewBox="0 0 18 18"><path d="M3 1a2 2 0 0 0-2 2v12c0 1.1.9 2 2 2h12a2 2 0 0 0 2-2V3a2 2 0 0 0-2-2H3Zm0 1.5c6.9 0 12.5 5.6 12.5 12.5H13C13 9.55 8.45 5 3 5V2.5Zm0 5c4.08 0 7.5 3.41 7.5 7.5H8c0-2.72-2.28-5-5-5V7.5Zm0 5c1.36 0 2.5 1.14 2.5 2.5H3v-2.5Z"/></svg>
|
||
Question feed
|
||
</a>
|
||
</div>
|
||
<aside class="s-modal js-feed-link-modal" tabindex="-1" role="dialog" aria-labelledby="feed-modal-title" aria-describedby="feed-modal-description" aria-hidden="true">
|
||
<div class="s-modal--dialog js-modal-dialog wmx4" role="document" data-controller="se-draggable">
|
||
<h1 class="s-modal--header fw-bold js-first-tabbable" id="feed-modal-title" data-se-draggable-target="handle" tabindex="0">
|
||
Subscribe to RSS
|
||
</h1>
|
||
<div class="d-flex gs4 gsy fd-column">
|
||
<div class="flex--item">
|
||
<label class="d-block s-label c-default" for="feed-url">
|
||
Question feed
|
||
<p class="s-description mt2" id="feed-modal-description">To subscribe to this RSS feed, copy and paste this URL into your RSS reader.</p>
|
||
</label>
|
||
</div>
|
||
<div class="d-flex ps-relative">
|
||
<input class="s-input" type="text" name="feed-url" id="feed-url" readonly="readonly" value="https://stackoverflow.com/feeds/question/20626994" />
|
||
<svg aria-hidden="true" class="s-input-icon fc-orange-400 svg-icon iconRss" width="18" height="18" viewBox="0 0 18 18"><path d="M3 1a2 2 0 0 0-2 2v12c0 1.1.9 2 2 2h12a2 2 0 0 0 2-2V3a2 2 0 0 0-2-2H3Zm0 1.5c6.9 0 12.5 5.6 12.5 12.5H13C13 9.55 8.45 5 3 5V2.5Zm0 5c4.08 0 7.5 3.41 7.5 7.5H8c0-2.72-2.28-5-5-5V7.5Zm0 5c1.36 0 2.5 1.14 2.5 2.5H3v-2.5Z"/></svg>
|
||
</div>
|
||
</div>
|
||
<a class="s-modal--close s-btn s-btn__muted js-modal-close js-last-tabbable" href="#" aria-label="Close">
|
||
<svg aria-hidden="true" class="svg-icon iconClearSm" width="14" height="14" viewBox="0 0 14 14"><path d="M12 3.41 10.59 2 7 5.59 3.41 2 2 3.41 5.59 7 2 10.59 3.41 12 7 8.41 10.59 12 12 10.59 8.41 7 12 3.41Z"/></svg>
|
||
</a>
|
||
</div>
|
||
</aside>
|
||
|
||
</div>
|
||
|
||
</div>
|
||
<script>StackExchange.ready(function(){$.get('/posts/20626994/ivc/44b3?prg=884e505e-1445-428b-9c08-e29b056752b9');});</script>
|
||
<noscript><div><img src="/posts/20626994/ivc/44b3?prg=884e505e-1445-428b-9c08-e29b056752b9" class="dno" alt="" width="0" height="0"></div></noscript><div style="display:none" id="js-codeblock-lang">lang-py</div></div>
|
||
|
||
|
||
|
||
</div>
|
||
</div>
|
||
|
||
|
||
<script type="text/javascript">
|
||
var cam = cam || { opt: {} };
|
||
var clcGamLoaderOptions = cam || { opt: {} };
|
||
var opt = clcGamLoaderOptions.opt;
|
||
|
||
opt.omni = 'BwoLCODW1eOIjro8EAUYsvzqCSACKAI6InxweXRob258c2NpcHl8bm9ybWFsLWRpc3RyaWJ1dGlvbnxIADNI6ODfszyxe0c';
|
||
opt.refresh = !1;
|
||
opt.refreshInterval = 90;
|
||
opt.sf = !0;
|
||
opt.hb = !1;
|
||
opt.ll = !0;
|
||
opt.tlb_position = 0;
|
||
opt.personalization_consent = !1;
|
||
opt.targeting_consent = !1;
|
||
opt.performance_consent = !1;
|
||
|
||
opt.targeting = {Registered:['false'],'so-tag':['python','scipy','normal-distribution'],'tag-reportable':['python','scipy','normal-distribution'],NumberOfAnswers:['3']};
|
||
opt.adReportEnabled = !0;
|
||
opt.adReportUrl = '/ads/report-ad';
|
||
opt.adReportText = 'Report this ad';
|
||
opt.adReportFileTypeErrorMessage = 'Please select a PNG or JPG file.';
|
||
opt.adReportFileSizeErrorMessage = 'The file must be under 2 MiB.';
|
||
opt.adReportErrorText = 'Error uploading ad report.';
|
||
opt.adReportThanksText = 'Thanks for your feedback. We’ll review this against our code of conduct and take action if necessary.';
|
||
opt.adReportLoginExpiredMessage = 'Your login session has expired, please login and try again.';
|
||
opt.adReportLoginErrorMessage = 'An error occurred when loading the report form - please try again';
|
||
opt.adReportModalClass = 'js-ad-report';
|
||
opt.perRequestGuid = '884e505e-1445-428b-9c08-e29b056752b9';
|
||
opt.responseHash = '0orI4eqFqLvQ96L6UgMhRZ+UzPZ5HLPBbMldEv6r8sY=';
|
||
|
||
|
||
opt.targeting.TargetingConsent = ['False_Passive'];
|
||
|
||
const urlParams = new URLSearchParams(window.location.search);
|
||
if (urlParams.has('dfptestads')) {
|
||
const dfptestads = urlParams.get('dfptestads');
|
||
opt.targeting.DfpTestAds = dfptestads;
|
||
}
|
||
</script>
|
||
<script>;(()=>{"use strict";var __webpack_modules__={23:(e,t,s)=>{s.d(t,{Z7:()=>d,eq:()=>a,kG:()=>r});const n=/^\/tags\//.test(location.pathname)||/^\/questions\/tagged\//.test(location.pathname)?"tag-pages":/^\/$/.test(location.pathname)||/^\/home/.test(location.pathname)?"home-page":"question-pages";let o=location.hostname;const i={slots:{lb:[[728,90]],mlb:[[728,90]],smlb:[[728,90]],bmlb:[[728,90]],sb:e=>"dfp-tsb"===e?[[300,250],[300,600]]:[[300,250]],"tag-sponsorship":[[730,135]],"mobile-below-question":[[320,50],[300,250]],msb:[[300,250],[300,600]],"talent-conversion-tracking":[[1,1]],"site-sponsorship":[[230,60]]},ids:{"dfp-tlb":"lb","dfp-mlb":"mlb","dfp-smlb":"smlb","dfp-bmlb":"bmlb","dfp-tsb":"sb","dfp-isb":"sb","dfp-tag":"tag-sponsorship","dfp-msb":"msb","dfp-sspon":"site-sponsorship","dfp-m-aq":"mobile-below-question"},idsToExcludeFromAdReports:["dfp-sspon"]};function r(){return Object.keys(i.ids)}function a(e){return i.idsToExcludeFromAdReports.indexOf(e)<0}function d(e){var t=e.split("_")[0];const s=i.ids[t];let r=i.slots[s];return"function"==typeof r&&(r=r(t)),{path:`/248424177/${o}/${s}/${n}`,sizes:r,zone:s}}},865:(e,t,s)=>{function n(e){return"string"==typeof e?document.getElementById(e):e}function o(e){return!!(e=n(e))&&"none"===getComputedStyle(e).display}function i(e){return!o(e)}function r(e){return!!e}function a(e){return/^\s*$/.test(n(e).innerHTML)}function d(e){const{style:t}=e;t.height=t.maxHeight=t.minHeight="auto",t.display="none"}function l(e){const{style:t}=e;t.height=t.maxHeight=t.minHeight="auto",t.display="none",[].forEach.call(e.children,l)}function c(e){const{style:t}=e;t.height=t.maxHeight=t.minHeight="auto",t.removeProperty("display")}function g(e){const t=document.createElement("script");t.src=e,document.body.appendChild(t)}function p(e){return s=e,(t=[]).push=function(e){return s(),delete this.push,this.push(e)},t;var t,s}function h(e){let t="function"==typeof HTMLTemplateElement;var s=document.createElement(t?"template":"div");return e=e.trim(),s.innerHTML=e,t?s.content.firstChild:s.firstChild}s.d(t,{$Z:()=>c,Bv:()=>h,Gx:()=>g,Nj:()=>n,QZ:()=>p,cf:()=>d,pn:()=>i,wo:()=>l,xb:()=>a,xj:()=>o,yb:()=>r})},763:(__unused_webpack_module,__webpack_exports__,__webpack_require__)=>{__webpack_require__.d(__webpack_exports__,{t:()=>AdReports});var _common_helper__WEBPACK_IMPORTED_MODULE_2__=__webpack_require__(865),_console__WEBPACK_IMPORTED_MODULE_1__=__webpack_require__(276),_ad_units__WEBPACK_IMPORTED_MODULE_0__=__webpack_require__(23);class AdReports{constructor(e,t){if(this.googletag=e,this.cam=t,this.allowedFileTypes=["image/png","image/jpg","image/jpeg"],this.ignoreValidation=!1,_console__WEBPACK_IMPORTED_MODULE_1__.cM("Ad reporting init"),this.cam=t,this.callOnButtonClick=e=>this.onButtonClick(e),this.googletag.pubads().addEventListener("slotRenderEnded",e=>this.handleSlotRendered(e)),Array.isArray(t.slotsRenderedEvents)){_console__WEBPACK_IMPORTED_MODULE_1__.cM("Adding report button to "+t.slotsRenderedEvents.length+" events that have transpired");for(var s=0;s<t.slotsRenderedEvents.length;s++)this.handleSlotRendered(t.slotsRenderedEvents[s])}}handleSlotRendered(e){if(e&&e.slot&&!e.isEmpty&&(e.creativeId||e.lineItemId||!e.isEmpty)){var t=e.slot.getSlotElementId();if(t){var s=document.getElementById(t);if(s)if((0,_ad_units__WEBPACK_IMPORTED_MODULE_0__.eq)(t)){var n=s?.closest(".js-zone-container")?.querySelector(".js-report-ad-button-container");n.innerHTML="",n.append(this.createButton(e)),n.style.height="24px",_console__WEBPACK_IMPORTED_MODULE_1__.cM("Added report button to the bottom of "+t)}else _console__WEBPACK_IMPORTED_MODULE_1__.cM("Not adding report button to the bottom of "+t+": shouldHaveReportButton = false");else _console__WEBPACK_IMPORTED_MODULE_1__.cM("Not adding report button to the bottom of "+t+": resolved invalid adUnit element")}else _console__WEBPACK_IMPORTED_MODULE_1__.cM("Not adding report button to the bottom of element: invalid adUnitElementId")}else _console__WEBPACK_IMPORTED_MODULE_1__.cM("Not adding report button to the bottom of element: invalid SlotRenderEndedEvent")}async onButtonClick(e){e.preventDefault();let t=e.target;const s=t.dataset.modalUrl,n=t.dataset.googleEventData;return await this.loadModal(s,t,n),!1}createButton(e){let t=document.createElement("button");var s=JSON.stringify(e);return t.dataset.googleEventData=s,t.dataset.modalUrl=this.cam.opt.adReportUrl,t.dataset.adUnit=e.slot.getSlotElementId(),t.classList.add("js-report-ad","s-btn","s-btn__link","fs-fine","mt2","float-right"),t.append(document.createTextNode(this.cam.opt.adReportText)),t.removeEventListener("click",this.callOnButtonClick),t.addEventListener("click",this.callOnButtonClick),t}async loadModal(url,$link,googleEventData){try{await window.StackExchange.helpers.loadModal(url,{returnElements:window.$($link)}),this.initForm(googleEventData)}catch(e){var message="",response=e.responseText?eval(`(${e.responseText})`):null;message=response&&response.isLoggedOut?this.cam.opt.adReportLoginExpiredMessage:this.cam.opt.adReportLoginErrorMessage,window.StackExchange.helpers.showToast(message,{type:"danger"})}}removeModal(){window.StackExchange.helpers.closePopups(document.querySelectorAll("."+this.cam.opt.adReportModalClass),"dismiss")}initForm(e,t=!1){this.ignoreValidation=t,this.$form=document.querySelector(".js-ad-report-form"),this.$googleEventData=this.$form.querySelector(".js-json-data"),this.$adReportReasons=this.$form.querySelectorAll(".js-ad-report-reason"),this.$adReportReasonOther=this.$form.querySelector(".js-ad-report-reason-other"),this.$fileUploaderInput=this.$form.querySelector(".js-file-uploader-input"),this.$imageUploader=this.$form.querySelector(".js-image-uploader"),this.$clearImageUpload=this.$form.querySelector(".js-clear-image-upload"),this.$imageUploaderText=this.$form.querySelector(".js-image-uploader-text"),this.$imageUploaderPreview=this.$form.querySelector(".js-image-uploader-preview"),this.$fileErrorMessage=this.$form.querySelector(".js-file-error");const s=this.$form.querySelector(".js-drag-drop-enabled"),n=this.$form.querySelector(".js-drag-drop-disabled");this.$googleEventData.value=e,this.$adReportReasons.forEach((e,t)=>e.addEventListener("change",e=>{this.$adReportReasonOther.classList.toggle("d-none","3"!==e.target.value)})),this.$fileUploaderInput.addEventListener("change",()=>{this.validateFileInput()&&this.updateImagePreview(this.$fileUploaderInput.files)}),this.$clearImageUpload.addEventListener("click",e=>{e.preventDefault(),this.clearImageUpload()});try{this.$fileUploaderInput[0].value="",this.$imageUploader.addEventListener("dragenter dragover dragleave drop",this.preventDefaults),this.$imageUploader.addEventListener("dragenter dragover",this.handleDragStart),this.$imageUploader.addEventListener("dragleave drop",this.handleDragEnd),this.$imageUploader.addEventListener("drop",this.handleDrop)}catch(e){s.classList.add("d-none"),n.classList.remove("d-none")}this.$form.removeEventListener("",this.handleDragEnd),this.$form.addEventListener("submit",async e=>(e.preventDefault(),this.submitForm(),!1))}clearImageUpload(){this.$fileUploaderInput.value="",this.$imageUploaderPreview.setAttribute("src",""),this.$imageUploaderPreview.classList.add("d-none"),this.$clearImageUpload.classList.add("d-none"),this.$imageUploaderText.classList.remove("d-none"),this.$imageUploader.classList.add("p16","ba","bas-dashed","bc-black-100")}preventDefaults(e){e.preventDefault(),e.stopPropagation()}handleDragStart(e){this.$imageUploader.classList.remove("bas-dashed"),this.$imageUploader.classList.add("bas-solid","bc-black-100")}handleDragEnd(e){this.$imageUploader.classList.remove("bas-solid","bc-black-100"),this.$imageUploader.classList.add("bas-dashed")}handleDrop(e){var t=e.originalEvent.dataTransfer.files;FileReader&&t&&1===t.length&&(this.$fileUploaderInput.files=t,this.validateFileInput()&&this.updateImagePreview(t))}setError(e){this.$fileErrorMessage.parentElement.classList.toggle("has-error",e)}updateImagePreview(e){this.$imageUploader.classList.remove("p16","ba","bas-dashed","bc-black-100"),this.$clearImageUpload.classList.remove("d-none"),this.$imageUploaderText.classList.add("d-none");var t=new FileReader;t.onload=e=>{null!=e.target&&(this.$imageUploaderPreview.setAttribute("src",e.target.result),this.$imageUploaderPreview.classList.remove("d-none"))},t.readAsDataURL(e[0])}validateFileInput(){if(this.ignoreValidation)return!0;const e=this.cam.opt.adReportFileTypeErrorMessage,t=this.cam.opt.adReportFileSizeErrorMessage;if(null==this.$fileUploaderInput.files)return!1;var s=this.$fileUploaderInput.files[0];return null==s?(this.setError(!0),!1):this.allowedFileTypes.indexOf(s.type)<0?(this.$fileErrorMessage.textContent=e,this.$fileErrorMessage.classList.remove("d-none"),this.setError(!0),!1):s.size>2097152?(this.$fileErrorMessage.textContent=t,this.$fileErrorMessage.classList.remove("d-none"),this.setError(!0),!1):(this.$fileErrorMessage.classList.add("d-none"),this.setError(!1),!0)}async gatherDiagnosticInfo(){return{BrowserVersion:await this.getBrowserVersion()}}getElementSource(e){return e.outerHTML}getNestedIFrameElement(e){var t=e.querySelector("iframe");return t.contentDocument?t.contentDocument.documentElement:t.contentWindow.document.documentElement}async getBrowserVersion(){return await navigator.userAgentData.getHighEntropyValues(["fullVersionList"]).then(e=>JSON.stringify(e.fullVersionList))}async submitForm(){if(!this.validateFileInput())return!1;this.$form.querySelector("[type=submit]").setAttribute("disabled","true");var e=JSON.parse(this.$googleEventData.value||"{}");e.Reason=parseInt(this.$form.querySelector(".js-ad-report-reason:checked").value,10),e.Description=this.$adReportReasonOther.value,this.$googleEventData.value=JSON.stringify(e);var t=new FormData(this.$form);if("1"===t.get("shareDiagnosticInfo")){var s=await this.gatherDiagnosticInfo();Object.keys(s).forEach(e=>t.append(e,s[e]))}try{const e=await window.fetch(this.$form.getAttribute("action"),{method:this.$form.getAttribute("method"),body:t,cache:"no-cache"}),s=e.headers.get("content-type")||"",o=await e.text();if(!e.ok)throw new Error("response not valid");if(0===s.indexOf("text/html")){var n=(0,_common_helper__WEBPACK_IMPORTED_MODULE_2__.Bv)(o);const e=n?n.querySelector(".js-modal-content"):null;if(_console__WEBPACK_IMPORTED_MODULE_1__.cM("$popupContent"),_console__WEBPACK_IMPORTED_MODULE_1__.cM(e),!e)throw new Error(`Could not find .js-modal-content in response from ${this.$form.getAttribute("action")}`);document.querySelector(".js-modal-content").replaceWith(e)}else window.StackExchange.helpers.showToast(this.cam.opt.adReportThanksText,{type:"success"}),this.removeModal()}catch(e){window.StackExchange.helpers.showToast(this.cam.opt.adReportErrorText,{type:"danger"})}finally{let e=this.$form.querySelector("[type=submit]");e&&e.removeAttribute("disabled")}}}},276:(e,t,s)=>{function n(...e){}function o(...e){}s.d(t,{cM:()=>n,vU:()=>o})}},__webpack_module_cache__={};function __webpack_require__(e){var t=__webpack_module_cache__[e];if(void 0!==t)return t.exports;var s=__webpack_module_cache__[e]={exports:{}};return __webpack_modules__[e](s,s.exports,__webpack_require__),s.exports}__webpack_require__.d=(e,t)=>{for(var s in t)__webpack_require__.o(t,s)&&!__webpack_require__.o(e,s)&&Object.defineProperty(e,s,{enumerable:!0,get:t[s]})},__webpack_require__.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t);var __webpack_exports__={};(()=>{var e=__webpack_require__(276),t=(e=>(e[e.Above=0]="Above",e[e.Below=1]="Below",e))(t||{});const s=Object.assign({},{"lib":"https://cdn.sstatic.net/clc/js/bundles/gam_loader_script/gam_loader_script.bundle.741.844f6c3cc28ce2d65ae9.min.js","style":null,"u":null,"wa":true,"kt":2000,"tto":true,"h":"clc.stackoverflow.com","allowed":"^(((talent\\.)?stackoverflow)|(blog\\.codinghorror)|(.*\\.googlesyndication)|(serverfault|askubuntu)|([^\\.]+\\.stackexchange))\\.com$","wv":true,"al":false,"abd":true,"cpa_liid":[5882654614],"cpa_cid":[138377597667],"dp":false,"tgt_to":1000,"tgt_u":"https://clc.stackoverflow.com/get-user-acct-tgt","tgt_e":false,"tgt_p":0});var n=__webpack_require__(23),o=__webpack_require__(865),i=__webpack_require__(763);class r{constructor(t,s){this.googletag=t,this.interval=s,e.cM("Ad refresh init. interval: "+s),this.googletag.pubads().addEventListener("impressionViewable",e=>this.onImpressionViewable(e)),e.cM("done enabling ad refresh")}onImpressionViewable(t){var s=t.slot;e.cM("ad refresh - slot "+s.getSlotElementId()+" is viewable, initializing refresh"),this.scheduleRefresh(s)}scheduleRefresh(e){setTimeout(()=>this.refreshAdSlot(e),1e3*this.interval)}static refreshMyAd(t,s){let n=t.pubads().getSlots().find(e=>e.getSlotElementId()===s);n&&(e.cM("refreshMyAd - refreshing ad slot "+s),t.pubads().refresh([n]))}refreshAdSlot(t){var s=t.getSlotElementId();this.isElementVisibleInBrowser(s)?(e.cM("refreshing ad slot "+s),googletag.pubads().refresh([t])):(e.cM("refresh skipped this time; ad slot not viewable:"+s),this.scheduleRefresh(t))}isElementVisibleInBrowser(e){var t=document.getElementById(e);if(null!==t){var s=t.getBoundingClientRect();if(s.top>=0&&s.left>=0&&s.bottom<=(window.innerHeight||document.documentElement.clientHeight)&&s.right<=(window.innerWidth||document.documentElement.clientWidth))return!0}return!1}}var a=(e=>(e.Off="Off",e.PreSurvey="PreSurvey",e.Collect="Collect",e.PostSurvey="PostSurvey",e))(a||{});class d{constructor(e,t){this.lineItemImpressions=[],this.surveysIdsCompleted=[],this.lineItemImpressions=e,this.surveysIdsCompleted=t}addImpression(e,t){let s={brandId:e,lineItemId:t,timestamp:new Date};this.lineItemImpressions.push(s)}addBrandSurveyCompleted(e){-1===this.surveysIdsCompleted.indexOf(e)&&this.surveysIdsCompleted.push(e)}getTotalBrandImpressions(){let e=new Map;for(let t of this.lineItemImpressions)if(e.has(t.brandId)){let s=e.get(t.brandId);e.set(t.brandId,s+1)}else e.set(t.brandId,1);return e}getBrandLineItemImpressions(e){let t={};for(let s of this.lineItemImpressions)if(s.brandId==e)if(void 0!==t[s.lineItemId]){let e=t[s.lineItemId];t[s.lineItemId]=e+1}else t[s.lineItemId]=1;return t}}class l{constructor(){this.surveyEngagementLocalStorageKey="clc-survey-engagement"}getBrandSurveyEngagement(){let e=localStorage.getItem(this.surveyEngagementLocalStorageKey);if(null===e)return new d([],[]);let t=JSON.parse(e);return new d(t.lineItemImpressions,t.surveysIdsCompleted)}saveBrandSurveyEngagement(e){let t=JSON.stringify(e);localStorage.setItem(this.surveyEngagementLocalStorageKey,t)}}class c{constructor(){this.surveyRepository=new l}getBrandSurveyEngagement(){return this.surveyRepository.getBrandSurveyEngagement()}recordImpression(e,t){let s=this.getBrandSurveyEngagement();s.addImpression(e,t),this.surveyRepository.saveBrandSurveyEngagement(s)}recordBrandSurveyCompleted(e){let t=this.getBrandSurveyEngagement();t.addBrandSurveyCompleted(e),this.surveyRepository.saveBrandSurveyEngagement(t)}}class g{constructor(t,s){this.googletag=t,this.brandSettings=s,this.brandSlotMap=new Map,this.brandSurveyEngagementService=new c,e.cM("Brand Survey init: "+JSON.stringify(s)),void 0!==s?(this.googletag.pubads().addEventListener("slotRenderEnded",e=>this.handleSlotRendered(e)),this.googletag.pubads().addEventListener("impressionViewable",e=>this.onImpressionViewable(e)),e.cM("done enabling Brand Survey")):e.cM("Brand Survey init: brandSettings is undefined, not initializing")}handleSlotRendered(t){e.cM("Brand Survey - slot rendered - slot:"+JSON.stringify(t.slot.getSlotElementId())+" lineItem: "+t.lineItemId);let s=this.findItemWithId(t.lineItemId);if(null===s||s.mode!==a.Collect)this.brandSlotMap.delete(t.slot.getSlotElementId());else{let e={brandId:s.brandId,lineItemId:t.lineItemId};this.brandSlotMap.set(t.slot.getSlotElementId(),e)}}onImpressionViewable(t){let s=t.slot;if(e.cM("ad - Brand Survey - impression viewable. Details: "+JSON.stringify(s.getSlotElementId())),e.cM("ad - Brand Survey - slot "+s.getSlotElementId()+" is viewable"),this.brandSlotMap.has(s.getSlotElementId())){let t=this.brandSlotMap.get(s.getSlotElementId());e.cM("Brand Survey - brand "+t.brandId+" is viewable"),this.recordImpression(this.brandSlotMap.get(s.getSlotElementId()))}}recordImpression(t){e.cM("ad - Brand Survey - recording impression for brand "+t.brandId),this.brandSurveyEngagementService.recordImpression(t.brandId,t.lineItemId)}findItemWithId(t){return e.cM("brand settings: "+JSON.stringify(this.brandSettings)),this.brandSettings.find(e=>e.lineItemIds.includes(t))||null}}const p="response-brand-survey-submit|",h="request-brand-survey-metadata|",m="record-metric-on-server|",u="request-dsp-tags",f="response-dsp-tags|";class v{static refreshAdIfBrandSurveyIsDuplicated(e,t,s){this.alreadyCompletedThisBrandSurvey(t)&&r.refreshMyAd(e,s)}static alreadyCompletedThisBrandSurvey(e){return(new c).getBrandSurveyEngagement().surveysIdsCompleted.includes(e)}}window.cam=new class{constructor(t=null){if(this.gptImported=!1,this.slotsRenderedEvents=[],this.collapsed={},e.cM("constructor"),this.clc_options=s,window.clcGamLoaderOptions)Object.assign(this,window.clcGamLoaderOptions);else if(void 0===this.opt){let e=window.opt;e&&(this.opt=e)}}init(){if(e.cM("init"),void 0===this.opt)throw new Error("opt not set, required by GAM Loader");e.cM("init brand survey service"),this.getUserAccountTargetingPromise=this.getUserAccountTargeting(),e.cM("setup message handler"),window.addEventListener("message",e=>{this.onmessage(e)})}handleSlotRenderedNoAdReport(){if(googletag.pubads().addEventListener("slotRenderEnded",e=>this.applyExtraMarginBottom(e)),Array.isArray(this.slotsRenderedEvents))for(var e=0;e<this.slotsRenderedEvents.length;e++)this.applyExtraMarginBottom(this.slotsRenderedEvents[e])}onmessage(t){let s="omni";if(t.data&&("string"==typeof t.data||t.data instanceof String))if(0===t.data.indexOf("get-omni-")){e.cM("Recevied get-omni message, sending back omni");var n=t.source,i=this.opt.omni,r="string"==typeof i?i:"";n.postMessage([s,r,this.opt.perRequestGuid].join("|"),"*")}else if(0===t.data.indexOf("collapse-")){e.cM("Recevied collapse message, collapse ad iframe"),e.cM(t);for(var a=t.source.window,d=document.getElementsByTagName("IFRAME"),l=0;l<d.length;l++){var g=d[l];if(g.contentWindow==a)return void(0,o.wo)(g.parentElement.parentElement.parentElement)}}else if(0===t.data.indexOf("resize|")){e.cM("Recevied resize message, resize ad iframe"),e.cM(t);let s=this._getFrameByEvent(t),n=t.data.indexOf("|")+1,o=t.data.slice(n),i=parseFloat(o)+.5;e.cM("New iframe height "+i),s.height=i.toString(),s.parentElement.style.height=i.toString()+"px"}else if(0===t.data.indexOf("getmarkup|")){let s=t.data.indexOf("|")+1,n=t.data.slice(s);e.cM("Recevied get markup message: "+n);let o=this._getFrameByEvent(t).closest(".everyonelovesstackoverflow");const i=document.createElement("script");i.dataset.adZoneId=o.id,i.src=n,document.body.appendChild(i)}else if(0===t.data.indexOf("window-location|")){let s=t.data.indexOf("|")+1,n=t.data.slice(s);e.cM("Recevied window location message: "+n),n.startsWith("/")||(n="/"+n),window.open(window.location.protocol+"//"+window.location.host+n,"_blank")}else if(0===t.data.indexOf("request-brand-survey-submit|")){let s=t.data.split("|"),n=s[1],o=s[2],i=s[3],r=JSON.parse(i);e.cM(n),e.cM(o),e.cM(i),e.cM("Received brand survey "+n+" response message: "+o);var b=new FormData;for(var _ in r)b.append(_,r[_]);let a=this._getFrameByEvent(t);if(v.alreadyCompletedThisBrandSurvey(+n))return e.cM("Already completed this brand survey. Not submitting duplicate to server."),void a.contentWindow.postMessage("response-brand-survey-submit-duplicate|","*");e.cM("Send the brand survey to the server"),fetch(o,{method:"POST",body:b}).then(e=>e.json()).then(e=>a.contentWindow.postMessage(p,"*")).catch(e=>a.contentWindow.postMessage(p,"*"))}else if(0===t.data.indexOf("brand-survey-completed-store|")){let s=t.data.split("|"),n=(s[1],s[2]);if(e.cM("Received brand survey completed store message for survey ID "+n),v.alreadyCompletedThisBrandSurvey(+n))return void e.cM("Already completed this brand survey. Not recording duplicate locally.");e.cM("Record brand survey completion locally"),(new c).recordBrandSurveyCompleted(+n)}else if(0===t.data.indexOf(h)){let s=t.data.split("|"),n=s[1],o=s[2];e.cM("Received message: request-brand-survey-metadata| with Brand Survey ID "+o);let i=(new c).getBrandSurveyEngagement().getBrandLineItemImpressions(+n),r=JSON.stringify(i),a=this._getFrameByEvent(t);e.cM("sending impression data: "+r),a.contentWindow.postMessage("response-brand-survey-metadata|"+this.opt.responseHash+"|"+this.opt.perRequestGuid+"|"+r,"*")}else if(0===t.data.indexOf("refresh-if-duplicate-brand-survey|")){let e=t.data.split("|")[1],s=this.getSlotElementIdByEvent(t);v.refreshAdIfBrandSurveyIsDuplicated(googletag,+e,s)}else if(0===t.data.indexOf(m)){e.cM("Received message: record-metric-on-server| with args: "+t.data);let s=t.data.split("|"),n=s[1],o=s[2],i=s[3],r=s[4],a=new FormData;a.append("brandSurveyId",i.toString()),a.append("responseHash",this.opt.responseHash),a.append("perRequestGuid",this.opt.perRequestGuid),a.append("questionNumber",n.toString()),a.append("metricType",r.toString()),fetch(o,{method:"POST",body:a}).then(e=>e.ok).catch(t=>{e.cM("SendMetricToServer: Error sending metric to server: "+t)})}else if(0===t.data.indexOf(u)){e.cM("Received message: request-dsp-tags with args: "+t.data);let s=this._getFrameByEvent(t);if(!this.opt.targeting["so-tag"])return void s.contentWindow.postMessage(f,"*");const n=this.opt.targeting["so-tag"].join(",");e.cM("sending targeting tags: "+n),s.contentWindow.postMessage(f+n,"*")}else e.cM("Received unhandled message")}getSlotElementIdByEvent(e){let t=this._getFrameByEvent(e).parentElement?.parentElement?.id;return t||""}_getFrameByEvent(e){return Array.from(document.getElementsByTagName("iframe")).filter(t=>t.contentWindow===e.source)[0]}classifyZoneIds(e){const t=e.map(o.Nj).filter(o.yb);return{eligible:t.filter(o.xb).filter(o.pn),ineligible:t.filter(o.xj)}}applyExtraMarginBottom(t){if(t&&t.slot&&!t.isEmpty&&(t.creativeId||t.lineItemId||!t.isEmpty)){var s=t.slot.getSlotElementId();if(s){var o=document.getElementById(s);if(o)if((0,n.eq)(s)){var i=o?.closest(".js-zone-container");i.style.marginBottom="24px",e.cM("Applied extra margin to the bottom of "+s)}else e.cM("Not applying extra margin to the bottom of "+s+": shouldHaveReportButton = false");else e.cM("Not applying extra margin to the bottom of "+s+": resolved invalid adUnit element")}else e.cM("Not applying extra margin to the bottom of element: invalid adUnitElementId")}else e.cM("Not applying extra margin to the bottom of element: invalid SlotRenderEndedEvent")}async load(s=(0,n.kG)()){const a=this.opt.tlb_position===t.Above?["dfp-mlb","dfp-smlb"]:["dfp-mlb","dfp-smlb","dfp-tlb"];if(!this.isGptReady())return e.cM("Initializing..."),this.initGpt(),void googletag.cmd.push(()=>this.load(s));this.opt.adReportEnabled?(e.cM("Ad reporting enabled"),this.adReports=new i.t(googletag,this)):(e.cM("Ad reporting not enabled"),this.handleSlotRenderedNoAdReport()),this.opt.refresh?(e.cM("Ad refresh enabled"),this.adRefresh=new r(googletag,this.opt.refreshInterval)):e.cM("Ad refresh not enabled"),this.opt.brandSurveyEnabled&&(e.cM("Brand Survey enabled"),this.brandSurvey=new g(googletag,this.opt.brandSurveySettings)),e.cM("Attempting to load ads into ids: ",s);const{eligible:d,ineligible:l}=this.classifyZoneIds(s);if(this.initDebugPanel(googletag,d.concat(l)),d.forEach(e=>(0,o.cf)(e)),l.forEach(o.wo),0===d.length)return void e.cM("Found no ad ids on page");e.cM("Eligible ids:",d),this.opt.abd&&this.appendAdblockDetector();var c=googletag.pubads().getSlots();if(c){var p=c.filter(e=>s.indexOf(e.getSlotElementId())>=0);googletag.destroySlots(p)}this.opt.sf&&(googletag.pubads().setForceSafeFrame(!0),googletag.pubads().setSafeFrameConfig({allowOverlayExpansion:!0,allowPushExpansion:!0,sandbox:!0})),e.cM("Targeting consent: Checking...");let h=!1,m=!1;void 0!==this.opt.targeting_consent&&(m=!0,e.cM("Targeting consent: Parameter set"),e.cM("Targeting consent: Consent given? ",this.opt.targeting_consent),h=this.opt.targeting_consent),void 0!==this.opt.personalization_consent&&(e.cM("Personalization consent: Parameter set"),e.cM("Personalization consent: Consent given? ",this.opt.personalization_consent),h=h&&this.opt.personalization_consent),h=h&&m,this.setPrivacySettings(h),this.opt.ll||googletag.pubads().enableSingleRequest(),cam.sreEvent||(googletag.pubads().addEventListener("slotRenderEnded",e=>this.onSlotRendered(e)),cam.sreEvent=!0),await this.setTargeting();var u=d.filter(e=>!this.opt.ll||a.indexOf(e.id)<0),f=d.filter(e=>!!this.opt.ll&&a.indexOf(e.id)>=0);e.cM("Up front ids:",u),e.cM("Lazy loaded ids:",f),u.forEach(t=>{e.cM(`Defining ad for element ${t.id}`),this.defineSlot(t.id,googletag),t.setAttribute("data-dfp-zone","true")}),googletag.enableServices(),u.forEach(t=>{e.cM(`Displaying ad for element ${t.id}`),googletag.cmd.push(()=>googletag.display(t.id))}),this.opt.ll&&(e.cM("Enabling lazy loading for GAM"),googletag.pubads().enableLazyLoad({fetchMarginPercent:0,renderMarginPercent:0}),e.cM("Setting up lazy loaded ad units"),f.forEach(t=>{e.cM(`Lazy loading - Defining Slot ${t.id}`),this.defineSlot(t.id,googletag)}),f.forEach(t=>{e.cM(`Lazy loading - Displaying ad for element ${t.id}`),googletag.cmd.push(()=>googletag.display(t.id))}))}setPrivacySettings(e){e?googletag.pubads().setPrivacySettings({limitedAds:!1,nonPersonalizedAds:!1}):googletag.pubads().setPrivacySettings({limitedAds:!0,nonPersonalizedAds:!0})}async setTargeting(){if(!googletag)throw new Error("googletag not defined");let t=this.opt.targeting;if(!t)throw new Error("Targeting not defined (is "+typeof t+")");Object.keys(t).forEach(s=>{e.cM(`-> targeting - ${s}: ${t[s]}`),googletag.pubads().setTargeting(s,t[s])});let s=!1;if(void 0!==this.opt.targeting_consent&&(s=this.opt.targeting_consent),s){let t=(new c).getBrandSurveyEngagement();if(t.getTotalBrandImpressions().forEach((t,s)=>{e.cM(`-> targeting - BrandImpressions: ${s}: ${t}`),googletag.pubads().setTargeting("brand_"+s.toString()+"_impressions",t.toString())}),t.surveysIdsCompleted.forEach(t=>{e.cM(`-> targeting - SurveysTaken: ${t}`),googletag.pubads().setTargeting("survey_"+t+"_taken","true")}),this.clc_options.tgt_e&&this.getUserAccountTargetingPromise){let t=await this.getUserAccountTargetingPromise;t&&t.tgt_acct?(e.cM("-> targeting - User Account: "+t.tgt_acct),googletag.pubads().setTargeting("user-acct",t.tgt_acct)):e.cM("-> targeting - User Account: Not Found")}}}appendAdblockDetector(){const e=document.createElement("div");e.className="adsbox",e.id="clc-abd",e.style.position="absolute",e.style.pointerEvents="none",e.innerHTML=" ",document.body.appendChild(e)}onSlotRendered(s){try{const r=s.slot.getSlotElementId();let a=[];r||a.push("id=0");const d=document.getElementById(r);if(r&&!d&&a.push("el=0"),0!==a.length)return void this.stalled(a.join("&"));const{path:l,sizes:c,zone:g}=(0,n.Z7)(r);if(this.collapsed[g]&&s.isEmpty)return e.cM(`No line item for the element #${d.id}... collapsing.`),void(0,o.wo)(d);if(this.slotsRenderedEvents.push(s),s.lineItemId||s.creativeId||!s.isEmpty){e.cM(`Rendered ad for element #${d.id} [line item #${s.lineItemId}]`),e.cM(s);var i=d.parentElement;if(i.classList.contains("js-zone-container")){switch((0,o.cf)(i),r){case"dfp-tlb":this.opt.tlb_position===t.Above?i.classList.add("mb8"):i.classList.add("mt16");break;case"dfp-tag":i.classList.add("mb8");break;case"dfp-msb":i.classList.add("mt16");break;case"dfp-mlb":case"dfp-smlb":case"dfp-bmlb":i.classList.add("my8");break;case"dfp-isb":i.classList.add("mt24");break;case"dfp-m-aq":i.classList.add("my12"),i.classList.add("mx-auto")}(0,o.$Z)(i),(0,o.$Z)(d)}else e.cM(`No ad for element #${d.id}, collapsing`),e.cM(s),(0,o.wo)(d)}}catch(t){e.cM("Exception thrown onSlotRendered"),e.cM(t),this.stalled("e=1")}}stalled(e){(new Image).src=`https://${this.clc_options.h}/stalled.gif?${e}`}defineSlot(t,s){"dfp-isb"===t&&(e.cM("-> targeting - Sidebar: Inline"),s.pubads().setTargeting("Sidebar",["Inline"])),"dfp-tsb"===t&&(e.cM("-> targeting - Sidebar: Right"),s.pubads().setTargeting("Sidebar",["Right"]));const{path:o,sizes:i,zone:r}=(0,n.Z7)(t);e.cM(`Defining slot for ${t}: ${o}, sizes: ${JSON.stringify(i)}`),s.defineSlot(o,i,t).addService(s.pubads())}importGptLibrary(){this.gptImported||(this.gptImported=!0,void 0===this.opt.targeting_consent||this.opt.targeting_consent?(0,o.Gx)("https://securepubads.g.doubleclick.net/tag/js/gpt.js"):(0,o.Gx)("https://pagead2.googlesyndication.com/tag/js/gpt.js"))}isGptReady(){return"undefined"!=typeof googletag&&!!googletag.apiReady}initGpt(){"undefined"==typeof googletag&&(window.googletag={cmd:(0,o.QZ)(()=>this.importGptLibrary())})}getUserAccountTargeting(){if(this.clc_options.tgt_e&&this.clc_options.tgt_p>0){if(e.cM("Targeting enabled."),this.clc_options.tgt_p<100){e.cM("Targeting rate limit enabled. Rolling the dice...");const t=Math.floor(100*Math.random())+1;if(e.cM("Rolled "+t+" and the max is "+this.clc_options.tgt_p),t>this.clc_options.tgt_p)return void e.cM("Will not request targeting.")}return e.cM("Will request targeting."),function(e,t,s){if(e){const e=new Headers;return e.append("Accept","application/json"),async function(e,t={},s=5e3){if("number"!=typeof s&&null!=s&&!1!==s){if("string"!=typeof s)throw new Error("fetchWithTimeout: timeout must be a number");if(s=parseInt(s),isNaN(s))throw new Error("fetchWithTimeout: timeout must be a number (or string that can be parsed to a number)")}const n=new AbortController,{signal:o}=n,i=fetch(e,{...t,signal:o}),r=setTimeout(()=>n.abort(),s);try{const e=await i;return clearTimeout(r),e}catch(e){throw clearTimeout(r),e}}(t,{method:"GET",mode:"cors",headers:e},s).then(e=>e.json())}return Promise.reject("No consent")}(this.opt.targeting_consent,this.clc_options.tgt_u,this.clc_options.tgt_to).catch(t=>{e.vU("Error fetching user account targeting"),e.vU(t)})}e.cM("Targeting disabled. Will not request account targeting data.")}initDebugPanel(t,s){e.cM("initDebugPanel"),e.cM("Not showing debug panel")}},window.clcGamLoaderOptions&&(cam.init(),cam.load())})()})();</script>
|
||
|
||
<footer id="footer" class="site-footer js-footer theme-light__forced" role="contentinfo">
|
||
<div class="site-footer--container">
|
||
<div class="site-footer--logo">
|
||
|
||
<a href="https://stackoverflow.com" aria-label="Stack Overflow"><svg aria-hidden="true" class="native svg-icon iconLogoGlyphMd" width="32" height="37" viewBox="0 0 32 37"><path d="M26 33v-9h4v13H0V24h4v9h22Z" fill="#BCBBBB"/><path d="m21.5 0-2.7 2 9.9 13.3 2.7-2L21.5 0ZM26 18.4 13.3 7.8l2.1-2.5 12.7 10.6-2.1 2.5ZM9.1 15.2l15 7 1.4-3-15-7-1.4 3Zm14 10.79.68-2.95-16.1-3.35L7 23l16.1 2.99ZM23 30H7v-3h16v3Z" fill="#F48024"/></svg></a>
|
||
</div>
|
||
<nav class="site-footer--nav">
|
||
<div class="site-footer--col">
|
||
<h5 class="-title"><a href="https://stackoverflow.com" class="js-gps-track" data-gps-track="footer.click({ location: 2, link: 15})">Stack Overflow</a></h5>
|
||
<ul class="-list js-primary-footer-links">
|
||
<li><a href="/questions" class="js-gps-track -link" data-gps-track="footer.click({ location: 2, link: 16})">Questions</a></li>
|
||
<li><a href="/help" class="js-gps-track -link" data-gps-track="footer.click({ location: 2, link: 3 })">Help</a></li>
|
||
</ul>
|
||
</div>
|
||
<div class="site-footer--col">
|
||
<h5 class="-title"><a href="https://stackoverflow.co/" class="js-gps-track" data-gps-track="footer.click({ location: 2, link: 19 })">Products</a></h5>
|
||
<ul class="-list">
|
||
<li><a href="https://stackoverflow.co/teams/" class="js-gps-track -link"
|
||
data-ga="["teams traffic","footer - site nav","stackoverflow.com/teams",null,{"dimension4":"teams"}]"
|
||
data-gps-track="footer.click({ location: 2, link: 29 })">Teams</a></li>
|
||
<li><a href="https://stackoverflow.co/advertising/" class="js-gps-track -link" data-gps-track="footer.click({ location: 2, link: 21 })">Advertising</a></li>
|
||
<li><a href="https://stackoverflow.co/collectives/" class="js-gps-track -link" data-gps-track="footer.click({ location: 2, link: 40 })">Collectives</a></li>
|
||
<li><a href="https://stackoverflow.co/talent/" class="js-gps-track -link" data-gps-track="footer.click({ location: 2, link: 20 })">Talent</a></li>
|
||
</ul>
|
||
</div>
|
||
<div class="site-footer--col">
|
||
<h5 class="-title"><a class="js-gps-track" data-gps-track="footer.click({ location: 2, link: 1 })" href="https://stackoverflow.co/">Company</a></h5>
|
||
<ul class="-list">
|
||
<li><a class="js-gps-track -link" data-gps-track="footer.click({ location: 2, link: 1 })" href="https://stackoverflow.co/">About</a></li>
|
||
<li><a class="js-gps-track -link" data-gps-track="footer.click({ location: 2, link: 27 })" href="https://stackoverflow.co/company/press/">Press</a></li>
|
||
<li><a class="js-gps-track -link" data-gps-track="footer.click({ location: 2, link: 9 })" href="https://stackoverflow.co/company/work-here/">Work Here</a></li>
|
||
<li><a class="js-gps-track -link" data-gps-track="footer.click({ location: 2, link: 7 })" href="https://stackoverflow.com/legal">Legal</a></li>
|
||
<li><a class="js-gps-track -link" data-gps-track="footer.click({ location: 2, link: 8 })" href="https://stackoverflow.com/legal/privacy-policy">Privacy Policy</a></li>
|
||
<li><a class="js-gps-track -link" data-gps-track="footer.click({ location: 2, link: 37 })" href="https://stackoverflow.com/legal/terms-of-service/public">Terms of Service</a></li>
|
||
<li><a class="js-gps-track -link" data-gps-track="footer.click({ location: 2, link: 13 })" href="https://stackoverflow.co/company/contact/">Contact Us</a></li>
|
||
<li class="" id="consent-footer-link"><a class="js-gps-track -link js-cookie-settings" data-gps-track="footer.click({ location: 2, link: 38 })" href="#" data-consent-popup-loader="footer">Cookie Settings</a></li>
|
||
<li><a class="js-gps-track -link" data-gps-track="footer.click({ location: 2, link: 39 })" href="https://stackoverflow.com/legal/cookie-policy">Cookie Policy</a></li>
|
||
</ul>
|
||
</div>
|
||
<div class="site-footer--col site-footer--categories-nav">
|
||
<div>
|
||
<h5 class="-title"><a href="https://stackexchange.com" data-gps-track="footer.click({ location: 2, link: 30 })">Stack Exchange Network</a></h5>
|
||
<ul class="-list">
|
||
<li>
|
||
<a href="https://stackexchange.com/sites#technology" class="-link js-gps-track" data-gps-track="footer.click({ location: 2, link: 24 })">
|
||
Technology
|
||
</a>
|
||
</li>
|
||
<li>
|
||
<a href="https://stackexchange.com/sites#culturerecreation" class="-link js-gps-track" data-gps-track="footer.click({ location: 2, link: 24 })">
|
||
Culture & recreation
|
||
</a>
|
||
</li>
|
||
<li>
|
||
<a href="https://stackexchange.com/sites#lifearts" class="-link js-gps-track" data-gps-track="footer.click({ location: 2, link: 24 })">
|
||
Life & arts
|
||
</a>
|
||
</li>
|
||
<li>
|
||
<a href="https://stackexchange.com/sites#science" class="-link js-gps-track" data-gps-track="footer.click({ location: 2, link: 24 })">
|
||
Science
|
||
</a>
|
||
</li>
|
||
<li>
|
||
<a href="https://stackexchange.com/sites#professional" class="-link js-gps-track" data-gps-track="footer.click({ location: 2, link: 24 })">
|
||
Professional
|
||
</a>
|
||
</li>
|
||
<li>
|
||
<a href="https://stackexchange.com/sites#business" class="-link js-gps-track" data-gps-track="footer.click({ location: 2, link: 24 })">
|
||
Business
|
||
</a>
|
||
</li>
|
||
|
||
<li class="mt16 md:mt0">
|
||
<a href="https://api.stackexchange.com/" class="-link js-gps-track" data-gps-track="footer.click({ location: 2, link: 24 })">
|
||
API
|
||
</a>
|
||
</li>
|
||
|
||
<li>
|
||
<a href="https://data.stackexchange.com/" class="-link js-gps-track" data-gps-track="footer.click({ location: 2, link: 24 })">
|
||
Data
|
||
</a>
|
||
</li>
|
||
</ul>
|
||
</div>
|
||
</div>
|
||
</nav>
|
||
<div class="site-footer--copyright fs-fine md:mt24">
|
||
<ul class="-list -social md:mb8">
|
||
<li><a class="js-gps-track -link" data-gps-track="footer.click({ location: 2, link:4 })" href="https://stackoverflow.blog?blb=1">Blog</a></li>
|
||
<li><a href="https://www.facebook.com/officialstackoverflow/" class="-link js-gps-track" data-gps-track="footer.click({ location: 2, link: 31 })">Facebook</a></li>
|
||
<li><a href="https://twitter.com/stackoverflow" class="-link js-gps-track" data-gps-track="footer.click({ location: 2, link: 32 })">Twitter</a></li>
|
||
<li><a href="https://linkedin.com/company/stack-overflow" class="-link js-gps-track" data-gps-track="footer.click({ location: 2, link: 33 })">LinkedIn</a></li>
|
||
<li><a href="https://www.instagram.com/thestackoverflow" class="-link js-gps-track" data-gps-track="footer.click({ location: 2, link: 36 })">Instagram</a></li>
|
||
</ul>
|
||
|
||
<p class="md:mb0">
|
||
Site design / logo © 2023 Stack Exchange Inc; user contributions licensed under <span class='td-underline'><a href="https://stackoverflow.com/help/licensing">CC BY-SA</a></span>. <span id="svnrev">rev 2023.11.30.1842</span>
|
||
</p>
|
||
</div>
|
||
</div>
|
||
|
||
</footer>
|
||
|
||
|
||
|
||
|
||
<!-- Google tag (gtag.js) -->
|
||
<script async src="https://www.googletagmanager.com/gtag/js?id=G-WCZ03SZFCQ"></script>
|
||
<script>
|
||
window.dataLayer = window.dataLayer || [];
|
||
function gtag() { dataLayer.push(arguments); }
|
||
</script>
|
||
<script>
|
||
StackExchange.ready(function() {
|
||
|
||
var ga3Settings = {
|
||
autoLink: ["stackoverflow.blog","info.stackoverflowsolutions.com","stackoverflowsolutions.com"],
|
||
sendTitles: true,
|
||
tracker: window.ga,
|
||
trackingCodes: [
|
||
'UA-108242619-1'
|
||
],
|
||
checkDimension: 'dimension42'
|
||
};
|
||
|
||
var customGA4Dimensions = {};
|
||
|
||
|
||
customGA4Dimensions["routename"] = "Questions/Show";
|
||
|
||
|
||
customGA4Dimensions["post_id"] = "20626994";
|
||
|
||
customGA4Dimensions["tags"] = "|python|scipy|normal-distribution|";
|
||
|
||
|
||
var ga4Settings = {
|
||
tracker: gtag,
|
||
trackingCodes: [
|
||
'G-WCZ03SZFCQ'
|
||
],
|
||
consentsToPerformanceCookies: "denied",
|
||
consentsToTargetingCookies: "denied",
|
||
eventParameters: customGA4Dimensions,
|
||
checkForAdBlock: true,
|
||
sendTitles: true,
|
||
trackClicks: false,
|
||
};
|
||
|
||
StackExchange.ga.init({ GA3: ga3Settings, GA4: ga4Settings });
|
||
|
||
|
||
StackExchange.ga.setDimension('dimension2', '|python|scipy|normal-distribution|');
|
||
|
||
|
||
StackExchange.ga.setDimension('dimension3', 'Questions/Show');
|
||
|
||
|
||
StackExchange.ga.setDimension('dimension7', "1701628364.1523443585");
|
||
|
||
StackExchange.ga.trackPageView();
|
||
});
|
||
</script>
|
||
|
||
|
||
<div class="ff-sans ps-fixed z-nav-fixed ws4 sm:w-auto p32 sm:p16 bg-black-600 fc-white bar-lg b16 l16 r16 js-consent-banner">
|
||
<svg aria-hidden="true" class="mln4 mb24 sm:d-none svg-spot spotCookieLg" style="color: var(--theme-button-primary-background-color, var(--theme-primary-200))" width="96" height="96" viewBox="0 0 96 96">
|
||
<path d="M35 45.5a7.5 7.5 0 11-15 0 7.5 7.5 0 0115 0zM63.5 63a7.5 7.5 0 100-15 7.5 7.5 0 000 15zm-19 19a7.5 7.5 0 100-15 7.5 7.5 0 000 15z" opacity=".2" />
|
||
<path d="M56.99 2.53a23.1 23.1 0 0114.66 6.15h.01l.01.02c.57.55.61 1.27.5 1.74v.07a10.95 10.95 0 01-3.07 4.77 9 9 0 01-6.9 2.5 10.34 10.34 0 01-9.72-10.44v-.08a10 10 0 011.03-3.74l.01-.03.02-.02c.28-.5.82-.92 1.52-.95.63-.02 1.27-.02 1.93.01zm12.04 7.83a20.1 20.1 0 00-12.2-4.83l-.92-.03c-.23.6-.38 1.25-.43 1.94a7.34 7.34 0 006.95 7.34 6 6 0 004.64-1.7c.94-.88 1.6-1.9 1.96-2.72zm15.3 8.76a6.84 6.84 0 00-5.09-.24 7.9 7.9 0 00-3.28 2.05 1.8 1.8 0 00-.3 1.95l.02.02v.02a15.16 15.16 0 008.74 7.47c.64.23 1.32.08 1.8-.33a6.63 6.63 0 001.63-1.97l.01-.03.01-.03c1.67-3.5-.12-7.32-3.54-8.91zm-5.5 3.28c.36-.25.82-.5 1.35-.67.92-.3 1.92-.35 2.89.1 2.14 1 2.92 3.14 2.11 4.88-.12.21-.26.41-.43.6l-.26-.1a12.29 12.29 0 01-5.66-4.81zM32 24a2 2 0 11-4 0 2 2 0 014 0zm12 21a2 2 0 11-4 0 2 2 0 014 0zm36 4a2 2 0 11-4 0 2 2 0 014 0zm-7 21a2 2 0 11-4 0 2 2 0 014 0zM59 81a2 2 0 11-4 0 2 2 0 014 0zM22 63a2 2 0 11-4 0 2 2 0 014 0zm27 7a9 9 0 11-18 0 9 9 0 0118 0zm-3 0a6 6 0 10-12 0 6 6 0 0012 0zM33 41a9 9 0 11-18 0 9 9 0 0118 0zm-15 0a6 6 0 1012 0 6 6 0 00-12 0zm50 11a9 9 0 11-18 0 9 9 0 0118 0zm-3 0a6 6 0 10-12 0 6 6 0 0012 0zM44.08 4.24c.31.48.33 1.09.05 1.58a17.46 17.46 0 00-2.36 8.8c0 9.55 7.58 17.24 16.85 17.24 2.97 0 5.75-.78 8.16-2.15a1.5 1.5 0 012.1.66 12.08 12.08 0 0011 6.74 12.4 12.4 0 007.85-2.75 1.5 1.5 0 012.38.74A45.76 45.76 0 0192 48.16c0 24.77-19.67 44.9-44 44.9S4 72.93 4 48.16C4 25.23 20.84 6.28 42.64 3.58a1.5 1.5 0 011.44.66zM40.22 7C21.32 10.71 7 27.7 7 48.16c0 23.17 18.39 41.9 41 41.9s41-18.73 41-41.9c0-3.52-.42-6.93-1.22-10.2a15.5 15.5 0 01-7.9 2.15c-5.5 0-10.36-2.83-12.97-7.1a19.46 19.46 0 01-8.28 1.85c-11 0-19.86-9.1-19.86-20.24 0-2.7.52-5.26 1.45-7.62zM92 91a2 2 0 100-4 2 2 0 000 4zM7 8.5a2.5 2.5 0 11-5 0 2.5 2.5 0 015 0zM82.5 90a1.5 1.5 0 100-3 1.5 1.5 0 000 3zm9.5-7.5a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zM13.5 8a1.5 1.5 0 100-3 1.5 1.5 0 000 3zM80 14.5a1.5 1.5 0 11-3 0 1.5 1.5 0 013 0zM53.5 20a1.5 1.5 0 100-3 1.5 1.5 0 000 3z" />
|
||
</svg>
|
||
<p class="fs-body2 fw-bold mb4">
|
||
Your privacy
|
||
</p>
|
||
<p class="mb16 s-anchors s-anchors__inherit s-anchors__underlined">
|
||
By clicking “Accept all cookies”, you agree Stack Exchange can store cookies on your device and disclose information in accordance with our <a href="https://stackoverflow.com/legal/cookie-policy">Cookie Policy</a>.
|
||
</p>
|
||
<div class="d-flex gs8 sm:fd-column">
|
||
<button class="flex--item6 s-btn s-btn__filled js-accept-cookies js-consent-banner-hide">
|
||
Accept all cookies
|
||
</button>
|
||
|
||
<button class="flex--item6 s-btn s-btn__filled js-reject-cookies js-consent-banner-hide">
|
||
Necessary cookies only
|
||
</button>
|
||
</div>
|
||
|
||
<div class="d-flex mt8 sm:fd-column">
|
||
<button class="flex--item12 s-btn s-btn__filled js-cookie-settings" data-consent-popup-loader="banner">
|
||
Customize settings
|
||
</button>
|
||
</div>
|
||
</div>
|
||
<div id="onetrust-consent-sdk" class="d-none"></div>
|
||
<div id="onetrust-banner-sdk" data-controller="s-modal"></div>
|
||
<div id="ot-pc-content" class="d-none"></div>
|
||
<div id="onetrust-style" class="d-none"> </div>
|
||
<div class="d-none js-consent-banner-version" data-consent-banner-version="1"></div>
|
||
|
||
|
||
|
||
</body>
|
||
</html>
|