{"id":1249,"date":"2023-07-27T03:40:05","date_gmt":"2023-07-27T03:40:05","guid":{"rendered":"https:\/\/statorials.org\/nl\/box-cox-transformatie-python\/"},"modified":"2023-07-27T03:40:05","modified_gmt":"2023-07-27T03:40:05","slug":"box-cox-transformatie-python","status":"publish","type":"post","link":"https:\/\/statorials.org\/nl\/box-cox-transformatie-python\/","title":{"rendered":"Hoe u een box-cox-transformatie uitvoert in python"},"content":{"rendered":"<p><\/p>\n<hr>\n<p><span style=\"color: #000000;\">Een <strong>box-cox-transformatie<\/strong> is een veelgebruikte methode voor het transformeren van een niet-normaal verdeelde dataset naar een meer<a href=\"https:\/\/statorials.org\/nl\/de-normale-verdeling\/\" target=\"_blank\" rel=\"noopener noreferrer\">normaal verdeelde<\/a> set.<\/span><\/p>\n<p> <span style=\"color: #000000;\">Het basisidee achter deze methode is om een waarde voor \u03bb te vinden zodat de getransformeerde gegevens zo dicht mogelijk bij de normale verdeling liggen, met behulp van de volgende formule:<\/span><\/p>\n<ul>\n<li> <span style=\"color: #000000;\">y(\u03bb) = (y <sup>\u03bb<\/sup> \u2013 1) \/ \u03bb als y \u2260 0<\/span><\/li>\n<li> <span style=\"color: #000000;\">y(\u03bb) = log(y) als y = 0<\/span><\/li>\n<\/ul>\n<p> <span style=\"color: #000000;\">We kunnen een box-cox-transformatie uitvoeren in Python met behulp van de functie <a href=\"https:\/\/docs.scipy.org\/doc\/scipy\/reference\/generated\/scipy.stats.boxcox.html\" target=\"_blank\" rel=\"noopener noreferrer\">scipy.stats.boxcox()<\/a> .<\/span><\/p>\n<p> <span style=\"color: #000000;\">Het volgende voorbeeld laat zien hoe u deze functie in de praktijk kunt gebruiken.<\/span><\/p>\n<h3> <span style=\"color: #000000;\"><strong>Voorbeeld: Box-Cox-transformatie in Python<\/strong><\/span><\/h3>\n<p> <span style=\"color: #000000;\"><span style=\"color: #000000;\">Stel dat we een willekeurige set van 1000 waarden genereren uit een <a href=\"https:\/\/statorials.org\/nl\/exponentiele-verdeling-1\/\" target=\"_blank\" rel=\"noopener\">exponenti\u00eble verdeling<\/a> :<\/span><\/span> <\/p>\n<pre style=\"background-color: #ececec; font-size: 15px;\"> <strong><span style=\"color: #008080;\">#load necessary packages<\/span>\n<span style=\"color: #008000;\">import<\/span> numpy <span style=\"color: #008000;\">as<\/span> np \n<span style=\"color: #008000;\">from<\/span> scipy. <span style=\"color: #3366ff;\">stats<\/span> <span style=\"color: #008000;\">import<\/span> boxcox \n<span style=\"color: #008000;\">import<\/span> seaborn <span style=\"color: #008000;\">as<\/span> sns \n\n<span style=\"color: #008080;\">#make this example reproducible\n<\/span>n.p. <span style=\"color: #3366ff;\">random<\/span> . <span style=\"color: #3366ff;\">seeds<\/span> (0)\n\n<span style=\"color: #008080;\">#generate dataset\n<\/span>data = np. <span style=\"color: #3366ff;\">random<\/span> . <span style=\"color: #3366ff;\">exponential<\/span> (size= <span style=\"color: #008000;\">1000<\/span> )\n\n<span style=\"color: #008080;\">#plot the distribution of data values\n<\/span>sns. <span style=\"color: #3366ff;\">distplot<\/span> (data, hist= <span style=\"color: #008000;\">False<\/span> , kde= <span style=\"color: #008000;\">True<\/span> ) \n<\/strong><\/pre>\n<p><img decoding=\"async\" loading=\"lazy\" class=\"aligncenter wp-image-12345 \" src=\"https:\/\/statorials.org\/wp-content\/uploads\/2023\/08\/boitecox1.png\" alt=\"\" width=\"391\" height=\"265\" srcset=\"\" sizes=\"auto, \"><\/p>\n<p> <span style=\"color: #000000;\">We kunnen zien dat de verdeling niet normaal lijkt.<\/span><\/p>\n<p> <span style=\"color: #000000;\">We kunnen de functie <strong>boxcox()<\/strong> gebruiken om een optimale waarde van lambda te vinden die een meer normale verdeling oplevert:<\/span> <\/p>\n<pre style=\"background-color: #ececec; font-size: 15px;\"> <strong><span style=\"color: #008080;\">#perform Box-Cox transformation on original data\n<\/span>transformed_data, best_lambda = boxcox(data) \n\n<span style=\"color: #008080;\">#plot the distribution of the transformed data values\n<\/span>sns. <span style=\"color: #3366ff;\">distplot<\/span> (transformed_data, hist= <span style=\"color: #008000;\">False<\/span> , kde= <span style=\"color: #008000;\">True<\/span> )<\/strong> <\/pre>\n<p><img decoding=\"async\" loading=\"lazy\" class=\"aligncenter wp-image-12346 \" src=\"https:\/\/statorials.org\/wp-content\/uploads\/2023\/08\/boitecox2.png\" alt=\"Box-Cox-transformatie in Python\" width=\"416\" height=\"267\" srcset=\"\" sizes=\"auto, \"><\/p>\n<p> <span style=\"color: #000000;\">We kunnen zien dat de getransformeerde gegevens een veel normalere verdeling volgen.<\/span><\/p>\n<p> <span style=\"color: #000000;\">We kunnen ook de exacte lambdawaarde vinden die is gebruikt om de Box-Cox-transformatie uit te voeren:<\/span><\/p>\n<pre style=\"background-color: #ececec; font-size: 15px;\"> <strong><span style=\"color: #008080;\">#display optimal lambda value\n<\/span><span style=\"color: #008000;\">print<\/span> (best_lambda)\n\n0.2420131978174143\n<\/strong><\/pre>\n<p> <span style=\"color: #000000;\">De optimale lambda bleek rond de <strong>0,242<\/strong> te liggen.<\/span><\/p>\n<p> <span style=\"color: #000000;\">Elke gegevenswaarde werd dus getransformeerd met behulp van de volgende vergelijking:<\/span><\/p>\n<p> <span style=\"color: #000000;\">Nieuw = (oud <sup>0,242<\/sup> \u2013 1) \/ 0,242<\/span><\/p>\n<p> <span style=\"color: #000000;\">We kunnen dit bevestigen door te kijken naar de waarden van de originele gegevens versus de getransformeerde gegevens:<\/span><\/p>\n<pre style=\"background-color: #ececec; font-size: 15px;\"> <strong><span style=\"color: #008080;\">#view first five values of original dataset\n<\/span>data[0:5]\n\narray([0.79587451, 1.25593076, 0.92322315, 0.78720115, 0.55104849])\n\n<span style=\"color: #008080;\">#view first five values of transformed dataset\n<\/span>transformed_data[0:5]\n\narray([-0.22212062, 0.23427768, -0.07911706, -0.23247555, -0.55495228])\n<\/strong><\/pre>\n<p> <span style=\"color: #000000;\">De eerste waarde in de oorspronkelijke gegevensset was <strong>0.79587<\/strong> . Daarom hebben we de volgende formule toegepast om deze waarde te transformeren:<\/span><\/p>\n<p> <span style=\"color: #000000;\">Nieuw = (.79587 <sup>0,242<\/sup> \u2013 1) \/ 0,242 = <strong>-0,222<\/strong><\/span><\/p>\n<p> <span style=\"color: #000000;\">We kunnen bevestigen dat de eerste waarde in de getransformeerde dataset inderdaad <strong>-0,222<\/strong> is.<\/span><\/p>\n<h3> <span style=\"color: #000000;\"><strong>Aanvullende bronnen<\/strong><\/span><\/h3>\n<p> <a href=\"https:\/\/statorials.org\/nl\/een-of-ander-pythonplot\/\" target=\"_blank\" rel=\"noopener noreferrer\">Hoe u een QQ-plot in Python maakt en interpreteert<\/a><br \/> <a href=\"https:\/\/statorials.org\/nl\/shapiro-wilk-testpython\/\" target=\"_blank\" rel=\"noopener noreferrer\">Hoe u een Shapiro-Wilk-normaliteitstest uitvoert in Python<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Een box-cox-transformatie is een veelgebruikte methode voor het transformeren van een niet-normaal verdeelde dataset naar een meernormaal verdeelde set. Het basisidee achter deze methode is om een waarde voor \u03bb te vinden zodat de getransformeerde gegevens zo dicht mogelijk bij de normale verdeling liggen, met behulp van de volgende formule: y(\u03bb) = (y \u03bb \u2013 [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[11],"tags":[],"class_list":["post-1249","post","type-post","status-publish","format-standard","hentry","category-gids"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v21.5 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Hoe een Box-Cox-transformatie uit te voeren in Python - Statorials<\/title>\n<meta name=\"description\" content=\"In deze tutorial wordt aan de hand van een voorbeeld uitgelegd hoe u een Box-Cox-transformatie uitvoert op een dataset in Python.\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/statorials.org\/nl\/box-cox-transformatie-python\/\" \/>\n<meta property=\"og:locale\" content=\"de_DE\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Hoe een Box-Cox-transformatie uit te voeren in Python - Statorials\" \/>\n<meta property=\"og:description\" content=\"In deze tutorial wordt aan de hand van een voorbeeld uitgelegd hoe u een Box-Cox-transformatie uitvoert op een dataset in Python.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/statorials.org\/nl\/box-cox-transformatie-python\/\" \/>\n<meta property=\"og:site_name\" content=\"Statorials\" \/>\n<meta property=\"article:published_time\" content=\"2023-07-27T03:40:05+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/statorials.org\/wp-content\/uploads\/2023\/08\/boitecox1.png\" \/>\n<meta name=\"author\" content=\"Dr.benjamin anderson\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Verfasst von\" \/>\n\t<meta name=\"twitter:data1\" content=\"Dr.benjamin anderson\" \/>\n\t<meta name=\"twitter:label2\" content=\"Gesch\u00e4tzte Lesezeit\" \/>\n\t<meta name=\"twitter:data2\" content=\"2\u00a0Minuten\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/statorials.org\/nl\/box-cox-transformatie-python\/\",\"url\":\"https:\/\/statorials.org\/nl\/box-cox-transformatie-python\/\",\"name\":\"Hoe een Box-Cox-transformatie uit te voeren in Python - Statorials\",\"isPartOf\":{\"@id\":\"https:\/\/statorials.org\/nl\/#website\"},\"datePublished\":\"2023-07-27T03:40:05+00:00\",\"dateModified\":\"2023-07-27T03:40:05+00:00\",\"author\":{\"@id\":\"https:\/\/statorials.org\/nl\/#\/schema\/person\/d4b8842173cca1bb62cdec41860e4219\"},\"description\":\"In deze tutorial wordt aan de hand van een voorbeeld uitgelegd hoe u een Box-Cox-transformatie uitvoert op een dataset in Python.\",\"breadcrumb\":{\"@id\":\"https:\/\/statorials.org\/nl\/box-cox-transformatie-python\/#breadcrumb\"},\"inLanguage\":\"de\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/statorials.org\/nl\/box-cox-transformatie-python\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/statorials.org\/nl\/box-cox-transformatie-python\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Thuis\",\"item\":\"https:\/\/statorials.org\/nl\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Hoe u een box-cox-transformatie uitvoert in python\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/statorials.org\/nl\/#website\",\"url\":\"https:\/\/statorials.org\/nl\/\",\"name\":\"Statorials\",\"description\":\"Uw gids voor statistische competentie\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/statorials.org\/nl\/?s={search_term_string}\"},\"query-input\":\"required name=search_term_string\"}],\"inLanguage\":\"de\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/statorials.org\/nl\/#\/schema\/person\/d4b8842173cca1bb62cdec41860e4219\",\"name\":\"Dr.benjamin anderson\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"de\",\"@id\":\"https:\/\/statorials.org\/nl\/#\/schema\/person\/image\/\",\"url\":\"http:\/\/statorials.org\/nl\/wp-content\/uploads\/2023\/10\/Dr.-Benjamin-Anderson-96x96.jpg\",\"contentUrl\":\"http:\/\/statorials.org\/nl\/wp-content\/uploads\/2023\/10\/Dr.-Benjamin-Anderson-96x96.jpg\",\"caption\":\"Dr.benjamin anderson\"},\"description\":\"Ik ben Benjamin, een gepensioneerde hoogleraar statistiek die nu een toegewijde Statorials-lesgever is. Ik heb uitgebreide ervaring en expertise op het gebied van statistiek en ik ben vastbesloten om mijn kennis te delen met studenten via Statorials. Lees verder\",\"sameAs\":[\"http:\/\/statorials.org\/nl\"]}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Hoe een Box-Cox-transformatie uit te voeren in Python - Statorials","description":"In deze tutorial wordt aan de hand van een voorbeeld uitgelegd hoe u een Box-Cox-transformatie uitvoert op een dataset in Python.","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/statorials.org\/nl\/box-cox-transformatie-python\/","og_locale":"de_DE","og_type":"article","og_title":"Hoe een Box-Cox-transformatie uit te voeren in Python - Statorials","og_description":"In deze tutorial wordt aan de hand van een voorbeeld uitgelegd hoe u een Box-Cox-transformatie uitvoert op een dataset in Python.","og_url":"https:\/\/statorials.org\/nl\/box-cox-transformatie-python\/","og_site_name":"Statorials","article_published_time":"2023-07-27T03:40:05+00:00","og_image":[{"url":"https:\/\/statorials.org\/wp-content\/uploads\/2023\/08\/boitecox1.png"}],"author":"Dr.benjamin anderson","twitter_card":"summary_large_image","twitter_misc":{"Verfasst von":"Dr.benjamin anderson","Gesch\u00e4tzte Lesezeit":"2\u00a0Minuten"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/statorials.org\/nl\/box-cox-transformatie-python\/","url":"https:\/\/statorials.org\/nl\/box-cox-transformatie-python\/","name":"Hoe een Box-Cox-transformatie uit te voeren in Python - Statorials","isPartOf":{"@id":"https:\/\/statorials.org\/nl\/#website"},"datePublished":"2023-07-27T03:40:05+00:00","dateModified":"2023-07-27T03:40:05+00:00","author":{"@id":"https:\/\/statorials.org\/nl\/#\/schema\/person\/d4b8842173cca1bb62cdec41860e4219"},"description":"In deze tutorial wordt aan de hand van een voorbeeld uitgelegd hoe u een Box-Cox-transformatie uitvoert op een dataset in Python.","breadcrumb":{"@id":"https:\/\/statorials.org\/nl\/box-cox-transformatie-python\/#breadcrumb"},"inLanguage":"de","potentialAction":[{"@type":"ReadAction","target":["https:\/\/statorials.org\/nl\/box-cox-transformatie-python\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/statorials.org\/nl\/box-cox-transformatie-python\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Thuis","item":"https:\/\/statorials.org\/nl\/"},{"@type":"ListItem","position":2,"name":"Hoe u een box-cox-transformatie uitvoert in python"}]},{"@type":"WebSite","@id":"https:\/\/statorials.org\/nl\/#website","url":"https:\/\/statorials.org\/nl\/","name":"Statorials","description":"Uw gids voor statistische competentie","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/statorials.org\/nl\/?s={search_term_string}"},"query-input":"required name=search_term_string"}],"inLanguage":"de"},{"@type":"Person","@id":"https:\/\/statorials.org\/nl\/#\/schema\/person\/d4b8842173cca1bb62cdec41860e4219","name":"Dr.benjamin anderson","image":{"@type":"ImageObject","inLanguage":"de","@id":"https:\/\/statorials.org\/nl\/#\/schema\/person\/image\/","url":"http:\/\/statorials.org\/nl\/wp-content\/uploads\/2023\/10\/Dr.-Benjamin-Anderson-96x96.jpg","contentUrl":"http:\/\/statorials.org\/nl\/wp-content\/uploads\/2023\/10\/Dr.-Benjamin-Anderson-96x96.jpg","caption":"Dr.benjamin anderson"},"description":"Ik ben Benjamin, een gepensioneerde hoogleraar statistiek die nu een toegewijde Statorials-lesgever is. Ik heb uitgebreide ervaring en expertise op het gebied van statistiek en ik ben vastbesloten om mijn kennis te delen met studenten via Statorials. Lees verder","sameAs":["http:\/\/statorials.org\/nl"]}]}},"yoast_meta":{"yoast_wpseo_title":"","yoast_wpseo_metadesc":"","yoast_wpseo_canonical":""},"_links":{"self":[{"href":"https:\/\/statorials.org\/nl\/wp-json\/wp\/v2\/posts\/1249","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/statorials.org\/nl\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/statorials.org\/nl\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/statorials.org\/nl\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/statorials.org\/nl\/wp-json\/wp\/v2\/comments?post=1249"}],"version-history":[{"count":0,"href":"https:\/\/statorials.org\/nl\/wp-json\/wp\/v2\/posts\/1249\/revisions"}],"wp:attachment":[{"href":"https:\/\/statorials.org\/nl\/wp-json\/wp\/v2\/media?parent=1249"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/statorials.org\/nl\/wp-json\/wp\/v2\/categories?post=1249"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/statorials.org\/nl\/wp-json\/wp\/v2\/tags?post=1249"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}