{"id":3045,"date":"2023-07-19T11:54:34","date_gmt":"2023-07-19T11:54:34","guid":{"rendered":"https:\/\/statorials.org\/nl\/split-r-testtrein\/"},"modified":"2023-07-19T11:54:34","modified_gmt":"2023-07-19T11:54:34","slug":"split-r-testtrein","status":"publish","type":"post","link":"https:\/\/statorials.org\/nl\/split-r-testtrein\/","title":{"rendered":"Gegevens splitsen tijdens training &amp; #038; testsets in r (3 methoden)"},"content":{"rendered":"<p><\/p>\n<hr>\n<p><span style=\"color: #000000;\">Als we machine learning-algoritmen aanpassen aan datasets, verdelen we de dataset vaak eerst in een trainingsset en een testset.<\/span><\/p>\n<p> <span style=\"color: #000000;\">Er zijn drie veelgebruikte manieren om gegevens op te splitsen in trainings- en testsets in R:<\/span><\/p>\n<p> <span style=\"color: #000000;\"><strong>Methode 1: Gebruik Base R<\/strong><\/span><\/p>\n<pre style=\"background-color: #ececec; font-size: 15px;\"> <strong><span style=\"color: #008080;\">#make this example reproducible\n<\/span>set. <span style=\"color: #3366ff;\">seeds<\/span> (1)\n\n<span style=\"color: #008080;\">#use 70% of dataset as training set and 30% as test set\n<\/span>sample &lt;- sample(c( <span style=\"color: #008000;\">TRUE<\/span> , <span style=\"color: #008000;\">FALSE<\/span> ), nrow(df), replace= <span style=\"color: #008000;\">TRUE<\/span> , prob=c( <span style=\"color: #008000;\">0.7<\/span> , <span style=\"color: #008000;\">0.3<\/span> ))\ntrain &lt;- df[sample, ]\ntest &lt;- df[!sample, ]<\/strong><\/pre>\n<p> <span style=\"color: #000000;\"><strong>Methode 2: Gebruik het caTools-pakket<\/strong><\/span><\/p>\n<pre style=\"background-color: #ececec; font-size: 15px;\"> <strong><span style=\"color: #008080;\"><span style=\"color: #000000;\"><span style=\"color: #008000;\">library<\/span> (caTools)<\/span>\n\n#make this example reproducible\n<\/span>set. <span style=\"color: #3366ff;\">seeds<\/span> (1)\n\n<span style=\"color: #008080;\">#use 70% of dataset as training set and 30% as test set\n<\/span>sample &lt;- sample. <span style=\"color: #3366ff;\">split<\/span> (df$any_column_name, SplitRatio = <span style=\"color: #008000;\">0.7<\/span> )\ntrain &lt;- subset(df, sample == <span style=\"color: #008000;\">TRUE<\/span> )\ntest &lt;- subset(df, sample == <span style=\"color: #008000;\">FALSE<\/span> )<\/strong><\/pre>\n<p> <span style=\"color: #000000;\"><strong>Methode 3: Gebruik het dplyr-pakket<\/strong><\/span><\/p>\n<pre style=\"background-color: #ececec; font-size: 15px;\"> <strong><span style=\"color: #008080;\"><span style=\"color: #000000;\"><span style=\"color: #008000;\">library<\/span> (dplyr)<\/span>\n\n#make this example reproducible\n<\/span>set. <span style=\"color: #3366ff;\">seeds<\/span> (1)\n\n<span style=\"color: #008080;\">#create ID column\n<\/span>df$id &lt;- 1:nrow(df)\n\n<span style=\"color: #008080;\">#use 70% of dataset as training set and 30% as test set<\/span>\ntrain &lt;- df %&gt;% dplyr::sample_frac( <span style=\"color: #008000;\">0.70<\/span> )\ntest &lt;- dplyr::anti_join(df, train, by = ' <span style=\"color: #ff0000;\">id<\/span> ')<\/strong><\/pre>\n<p> <span style=\"color: #000000;\">De volgende voorbeelden laten zien hoe u elke methode in de praktijk kunt gebruiken met de ingebouwde <a href=\"https:\/\/statorials.org\/nl\/iris-r-gegevensset\/\" target=\"_blank\" rel=\"noopener\">irisgegevensset<\/a> in R.<\/span><\/p>\n<h3> <span style=\"color: #000000;\"><strong>Voorbeeld 1: Gegevens opsplitsen in trainings- en testsets met behulp van Base R<\/strong><\/span><\/h3>\n<p> <span style=\"color: #000000;\"><span style=\"color: #000000;\">De volgende code laat zien hoe u de R-basis kunt gebruiken om de irisgegevensset te splitsen in een trainings- en testset, waarbij 70% van de rijen wordt gebruikt als trainingsset en de resterende 30% als testset:<\/span><\/span><\/p>\n<pre style=\"background-color: #ececec; font-size: 15px;\"> <strong><span style=\"color: #008080;\">#load iris dataset\n<\/span>data(iris)\n\n<span style=\"color: #008080;\">#make this example reproducible\n<\/span>set. <span style=\"color: #3366ff;\">seeds<\/span> (1)\n\n<span style=\"color: #008080;\">#Use 70% of dataset as training set and remaining 30% as testing set\n<\/span>sample &lt;- sample(c( <span style=\"color: #008000;\">TRUE<\/span> , <span style=\"color: #008000;\">FALSE<\/span> ), nrow(iris), replace= <span style=\"color: #008000;\">TRUE<\/span> , prob=c( <span style=\"color: #008000;\">0.7<\/span> , <span style=\"color: #008000;\">0.3<\/span> ))\ntrain &lt;- iris[sample, ]\ntest &lt;- iris[!sample, ]\n\n<span style=\"color: #008080;\">#view dimensions of training set\n<\/span>sun(train)\n\n[1] 106 5\n\n<span style=\"color: #008080;\">#view dimensions of test set\n<\/span>dim(test)\n\n[1] 44 5<\/strong><\/pre>\n<p> <span style=\"color: #000000;\">Uit het resultaat kunnen we zien:<\/span><\/p>\n<ul>\n<li> <span style=\"color: #000000;\">De trainingsset is een dataframe van 106 rijen en 5 kolommen.<\/span><\/li>\n<li> <span style=\"color: #000000;\">De test is een datablok van 44 rijen en 5 kolommen.<\/span><\/li>\n<\/ul>\n<p> <span style=\"color: #000000;\">Omdat de oorspronkelijke database in totaal 150 rijen had, bevat de trainingsset ongeveer 106\/150 = 70,6% van de oorspronkelijke rijen.<\/span><\/p>\n<p> <span style=\"color: #000000;\">We kunnen ook de eerste paar rijen van de trainingsset weergeven als we dat willen:<\/span><\/p>\n<pre style=\"background-color: #ececec; font-size: 15px;\"> <strong><span style=\"color: #008080;\">#view first few rows of training set\n<\/span>head(train)\n\n  Sepal.Length Sepal.Width Petal.Length Petal.Width Species\n1 5.1 3.5 1.4 0.2 setosa\n2 4.9 3.0 1.4 0.2 setosa\n3 4.7 3.2 1.3 0.2 setosa\n5 5.0 3.6 1.4 0.2 setosa\n8 5.0 3.4 1.5 0.2 setosa\n9 4.4 2.9 1.4 0.2 setosa\n<\/strong><\/pre>\n<h3> <span style=\"color: #000000;\"><strong>Voorbeeld 2: Gegevens opsplitsen in trainings- en testsets met behulp van caTools<\/strong><\/span><\/h3>\n<p> <span style=\"color: #000000;\">De volgende code laat zien hoe u het <strong>caTools-<\/strong> pakket in R kunt gebruiken om de iris-gegevensset te splitsen in een trainings- en testset, waarbij 70% van de rijen wordt gebruikt als trainingsset en de resterende 30% als testset:<\/span><\/p>\n<pre style=\"background-color: #ececec; font-size: 15px;\"> <strong><span style=\"color: #008080;\"><span style=\"color: #000000;\"><span style=\"color: #008000;\">library<\/span> (caTools)<\/span>\n\n#load iris dataset\n<\/span>data(iris)\n\n<span style=\"color: #008080;\">#make this example reproducible\n<\/span>set. <span style=\"color: #3366ff;\">seeds<\/span> (1)\n\n<span style=\"color: #008080;\">#Use 70% of dataset as training set and remaining 30% as testing set\n<\/span>sample &lt;- sample. <span style=\"color: #3366ff;\">split<\/span> (iris$Species, SplitRatio = <span style=\"color: #008000;\">0.7<\/span> )\ntrain &lt;- subset(iris, sample == <span style=\"color: #008000;\">TRUE<\/span> )\ntest &lt;- subset(iris, sample == <span style=\"color: #008000;\">FALSE<\/span> )\n\n<span style=\"color: #008080;\">#view dimensions of training set\n<\/span>sun(train)\n\n[1] 105 5\n\n<span style=\"color: #008080;\">#view dimensions of test set\n<\/span>dim(test)\n\n[1] 45 5<\/strong><\/pre>\n<p> <span style=\"color: #000000;\">Uit het resultaat kunnen we zien:<\/span><\/p>\n<ul>\n<li> <span style=\"color: #000000;\">De trainingsset is een dataframe van 105 rijen en 5 kolommen.<\/span><\/li>\n<li> <span style=\"color: #000000;\">De test is een datablok van 45 rijen en 5 kolommen.<\/span><\/li>\n<\/ul>\n<h3> <span style=\"color: #000000;\"><strong>Voorbeeld 3: Gegevens opsplitsen in trainings- en testsets met behulp van dplyr<\/strong><\/span><\/h3>\n<p> <span style=\"color: #000000;\">De volgende code laat zien hoe u het <strong>caTools-<\/strong> pakket in R kunt gebruiken om de iris-gegevensset te splitsen in een trainings- en testset, waarbij 70% van de rijen wordt gebruikt als trainingsset en de resterende 30% als testset:<\/span><\/p>\n<pre style=\"background-color: #ececec; font-size: 15px;\"> <strong><span style=\"color: #008080;\"><span style=\"color: #000000;\"><span style=\"color: #008000;\">library<\/span> (dplyr)<\/span>\n\n#load iris dataset\n<\/span>data(iris)\n\n<span style=\"color: #008080;\">#make this example reproducible\n<\/span>set. <span style=\"color: #3366ff;\">seeds<\/span> (1)\n\n<span style=\"color: #008080;\">#create variable ID\n<\/span>iris$id &lt;- 1:nrow(iris)\n\n<span style=\"color: #008080;\">#Use 70% of dataset as training set and remaining 30% as testing set<\/span> \ntrain &lt;- iris %&gt;% dplyr::sample_frac( <span style=\"color: #008000;\">0.7<\/span> )\ntest &lt;- dplyr::anti_join(iris, train, by = ' <span style=\"color: #ff0000;\">id<\/span> ')\n\n<span style=\"color: #008080;\">#view dimensions of training set\n<\/span>sun(train)\n\n[1] 105 6\n\n<span style=\"color: #008080;\">#view dimensions of test set\n<\/span>dim(test)\n\n[1] 45 6\n<\/strong><\/pre>\n<p> <span style=\"color: #000000;\">Uit het resultaat kunnen we zien:<\/span><\/p>\n<ul>\n<li> <span style=\"color: #000000;\">De trainingsset is een dataframe van 105 rijen en 6 kolommen.<\/span><\/li>\n<li> <span style=\"color: #000000;\">De test is een datablok van 45 rijen en 6 kolommen.<\/span><\/li>\n<\/ul>\n<p> <span style=\"color: #000000;\">Houd er rekening mee dat deze trainings- en testsets een extra &#8218;id&#8216;-kolom bevatten die we hebben gemaakt.<\/span><\/p>\n<p> <span style=\"color: #000000;\">Zorg ervoor dat u deze kolom niet gebruikt (of volledig uit de dataframes verwijdert) bij het aanpassen van uw machine learning-algoritme.<\/span><\/p>\n<h3> <span style=\"color: #000000;\"><strong>Aanvullende bronnen<\/strong><\/span><\/h3>\n<p> <span style=\"color: #000000;\">In de volgende zelfstudies wordt uitgelegd hoe u andere veelvoorkomende bewerkingen in R uitvoert:<\/span><\/p>\n<p> <a href=\"https:\/\/statorials.org\/nl\/hoe-bereken-je-mse-in-r\/\" target=\"_blank\" rel=\"noopener\">Hoe MSE in R te berekenen<\/a><br \/> <a href=\"https:\/\/statorials.org\/nl\/hoe-rmse-in-r-te-berekenen\/\" target=\"_blank\" rel=\"noopener\">Hoe RMSE in R te berekenen<\/a><br \/> <a href=\"https:\/\/statorials.org\/nl\/r-vierkanten-in-r-passen\/\" target=\"_blank\" rel=\"noopener\">Hoe u het aangepaste R-kwadraat in R kunt berekenen<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Als we machine learning-algoritmen aanpassen aan datasets, verdelen we de dataset vaak eerst in een trainingsset en een testset. Er zijn drie veelgebruikte manieren om gegevens op te splitsen in trainings- en testsets in R: Methode 1: Gebruik Base R #make this example reproducible set. seeds (1) #use 70% of dataset as training set and [&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-3045","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>Gegevens opsplitsen in trainings- en testsets in R (3 methoden) - Statorials<\/title>\n<meta name=\"description\" content=\"In deze zelfstudie wordt uitgelegd hoe u gegevens kunt opsplitsen in trainings- en testsets in R, met behulp van drie verschillende methoden.\" \/>\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\/split-r-testtrein\/\" \/>\n<meta property=\"og:locale\" content=\"de_DE\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Gegevens opsplitsen in trainings- en testsets in R (3 methoden) - Statorials\" \/>\n<meta property=\"og:description\" content=\"In deze zelfstudie wordt uitgelegd hoe u gegevens kunt opsplitsen in trainings- en testsets in R, met behulp van drie verschillende methoden.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/statorials.org\/nl\/split-r-testtrein\/\" \/>\n<meta property=\"og:site_name\" content=\"Statorials\" \/>\n<meta property=\"article:published_time\" content=\"2023-07-19T11:54:34+00:00\" \/>\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=\"4\u00a0Minuten\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/statorials.org\/nl\/split-r-testtrein\/\",\"url\":\"https:\/\/statorials.org\/nl\/split-r-testtrein\/\",\"name\":\"Gegevens opsplitsen in trainings- en testsets in R (3 methoden) - Statorials\",\"isPartOf\":{\"@id\":\"https:\/\/statorials.org\/nl\/#website\"},\"datePublished\":\"2023-07-19T11:54:34+00:00\",\"dateModified\":\"2023-07-19T11:54:34+00:00\",\"author\":{\"@id\":\"https:\/\/statorials.org\/nl\/#\/schema\/person\/d4b8842173cca1bb62cdec41860e4219\"},\"description\":\"In deze zelfstudie wordt uitgelegd hoe u gegevens kunt opsplitsen in trainings- en testsets in R, met behulp van drie verschillende methoden.\",\"breadcrumb\":{\"@id\":\"https:\/\/statorials.org\/nl\/split-r-testtrein\/#breadcrumb\"},\"inLanguage\":\"de\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/statorials.org\/nl\/split-r-testtrein\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/statorials.org\/nl\/split-r-testtrein\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Thuis\",\"item\":\"https:\/\/statorials.org\/nl\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Gegevens splitsen tijdens training &amp; #038; testsets in r (3 methoden)\"}]},{\"@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":"Gegevens opsplitsen in trainings- en testsets in R (3 methoden) - Statorials","description":"In deze zelfstudie wordt uitgelegd hoe u gegevens kunt opsplitsen in trainings- en testsets in R, met behulp van drie verschillende methoden.","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\/split-r-testtrein\/","og_locale":"de_DE","og_type":"article","og_title":"Gegevens opsplitsen in trainings- en testsets in R (3 methoden) - Statorials","og_description":"In deze zelfstudie wordt uitgelegd hoe u gegevens kunt opsplitsen in trainings- en testsets in R, met behulp van drie verschillende methoden.","og_url":"https:\/\/statorials.org\/nl\/split-r-testtrein\/","og_site_name":"Statorials","article_published_time":"2023-07-19T11:54:34+00:00","author":"Dr.benjamin anderson","twitter_card":"summary_large_image","twitter_misc":{"Verfasst von":"Dr.benjamin anderson","Gesch\u00e4tzte Lesezeit":"4\u00a0Minuten"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/statorials.org\/nl\/split-r-testtrein\/","url":"https:\/\/statorials.org\/nl\/split-r-testtrein\/","name":"Gegevens opsplitsen in trainings- en testsets in R (3 methoden) - Statorials","isPartOf":{"@id":"https:\/\/statorials.org\/nl\/#website"},"datePublished":"2023-07-19T11:54:34+00:00","dateModified":"2023-07-19T11:54:34+00:00","author":{"@id":"https:\/\/statorials.org\/nl\/#\/schema\/person\/d4b8842173cca1bb62cdec41860e4219"},"description":"In deze zelfstudie wordt uitgelegd hoe u gegevens kunt opsplitsen in trainings- en testsets in R, met behulp van drie verschillende methoden.","breadcrumb":{"@id":"https:\/\/statorials.org\/nl\/split-r-testtrein\/#breadcrumb"},"inLanguage":"de","potentialAction":[{"@type":"ReadAction","target":["https:\/\/statorials.org\/nl\/split-r-testtrein\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/statorials.org\/nl\/split-r-testtrein\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Thuis","item":"https:\/\/statorials.org\/nl\/"},{"@type":"ListItem","position":2,"name":"Gegevens splitsen tijdens training &amp; #038; testsets in r (3 methoden)"}]},{"@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\/3045","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=3045"}],"version-history":[{"count":0,"href":"https:\/\/statorials.org\/nl\/wp-json\/wp\/v2\/posts\/3045\/revisions"}],"wp:attachment":[{"href":"https:\/\/statorials.org\/nl\/wp-json\/wp\/v2\/media?parent=3045"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/statorials.org\/nl\/wp-json\/wp\/v2\/categories?post=3045"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/statorials.org\/nl\/wp-json\/wp\/v2\/tags?post=3045"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}