{"id":2256,"date":"2023-07-23T01:36:42","date_gmt":"2023-07-23T01:36:42","guid":{"rendered":"https:\/\/statorials.org\/id\/algoritma-glm-fit-tidak-konvergen\/"},"modified":"2023-07-23T01:36:42","modified_gmt":"2023-07-23T01:36:42","slug":"algoritma-glm-fit-tidak-konvergen","status":"publish","type":"post","link":"https:\/\/statorials.org\/id\/algoritma-glm-fit-tidak-konvergen\/","title":{"rendered":"Cara menangani r peringatan: glm.fit: algoritma tidak menyatu"},"content":{"rendered":"<p><\/p>\n<hr>\n<p><span style=\"color: #000000;\">Peringatan umum yang mungkin Anda temui di R adalah:<\/span><\/p>\n<pre style=\"background-color: #ececec; font-size: 15px;\"> <span style=\"color: #000000;\"><strong>glm.fit: algorithm did not converge\n<\/strong><\/span><\/pre>\n<p> <span style=\"color: #000000;\">Peringatan ini sering terjadi ketika Anda mencoba menyesuaikan model regresi logistik di R dan melihat <strong>pemisahan yang sempurna<\/strong> , yaitu variabel prediktor mampu memisahkan variabel respons dengan sempurna menjadi 0 dan 1.<\/span><\/p>\n<p> <span style=\"color: #000000;\">Contoh berikut menunjukkan cara menangani peringatan ini dalam praktiknya.<\/span><\/p>\n<h3> <span style=\"color: #000000;\"><strong>Cara mereproduksi peringatan tersebut<\/strong><\/span><\/h3>\n<p> <span style=\"color: #000000;\">Misalkan kita mencoba menyesuaikan model regresi logistik berikut di R:<\/span><\/p>\n<pre style=\"background-color: #ececec; font-size: 15px;\"> <strong><span style=\"color: #008080;\"><span style=\"color: #000000;\"><span style=\"color: #008080;\">#create data frame<\/span>\ndf &lt;- data. <span style=\"color: #3366ff;\">frame<\/span> (x=c(.1, .2, .3, .4, .5, .6, .7, .8, .9, 1, 1, 1.1, 1.3, 1.5, 1.7),\n                 y=c(0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1))\n\n<span style=\"color: #008080;\">#attempt to fit logistic regression model\n<\/span>glm(y~x, data=df, family=\" <span style=\"color: #ff0000;\">binomial<\/span> \")\n\nCall: glm(formula = y ~ x, family = \"binomial\", data = df)\n\nCoefficients:\n(Intercept)x  \n     -409.1 431.1  \n\nDegrees of Freedom: 14 Total (ie Null); 13 Residual\nNull Deviance: 20.19 \nResidual Deviance: 2.468e-09 AIC: 4\nWarning messages:\n1: glm.fit: algorithm did not converge \n2: glm.fit: fitted probabilities numerically 0 or 1 occurred \n<\/span><\/span><\/strong><\/pre>\n<p> <span style=\"color: #000000;\">Perhatikan bahwa kami menerima pesan peringatan: <strong>glm.fit: algoritma tidak menyatu<\/strong> .<\/span><\/p>\n<p> <span style=\"color: #000000;\">Pesan ini kita terima karena variabel prediktor x mampu memisahkan variabel respon y menjadi 0 dan 1 dengan sempurna.<\/span><\/p>\n<p> <span style=\"color: #000000;\">Perhatikan bahwa untuk setiap nilai x yang kurang dari 1, y sama dengan 0. Dan untuk setiap nilai x yang sama dengan atau lebih besar dari 1, y sama dengan 1.<\/span><\/p>\n<p> <span style=\"color: #000000;\">Kode berikut menunjukkan skenario ketika variabel prediktor tidak mampu memisahkan variabel respons menjadi 0 dan 1 dengan sempurna:<\/span><\/p>\n<pre style=\"background-color: #ececec; font-size: 15px;\"> <strong><span style=\"color: #008080;\"><span style=\"color: #000000;\"><span style=\"color: #008080;\">#create data frame\n<\/span>df &lt;- data. <span style=\"color: #3366ff;\">frame<\/span> (x=c(.1, .2, .3, .4, .5, .6, .7, .8, .9, 1, 1, 1.1, 1.3, 1.5, 1.7),\n                 y=c(0, 1, 0, 1, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1))\n\n<span style=\"color: #008080;\">#fit logistic regression model\n<\/span>glm(y~x, data=df, family=\" <span style=\"color: #ff0000;\">binomial<\/span> \")\n\nCall: glm(formula = y ~ x, family = \"binomial\", data = df)\n\nCoefficients:\n(Intercept) x  \n     -2.112 2.886  \n\nDegrees of Freedom: 14 Total (ie Null); 13 Residual\nNull Deviance: 20.73 \nResidual Deviance: 16.31 AIC: 20.31\n<\/span><\/span><\/strong><\/pre>\n<p> <span style=\"color: #000000;\">Kami tidak menerima pesan peringatan apa pun karena variabel prediktor tidak dapat memisahkan variabel respons menjadi 0 dan 1 dengan sempurna.<\/span><\/p>\n<h3> <span style=\"color: #000000;\"><strong>Bagaimana menangani peringatan tersebut<\/strong><\/span><\/h3>\n<p> <span style=\"color: #000000;\">Jika kita menghadapi skenario pemisahan yang sempurna, ada dua cara untuk menanganinya:<\/span><\/p>\n<p> <span style=\"color: #000000;\"><strong>Metode 1: Gunakan regresi yang diberi sanksi.<\/strong><\/span><\/p>\n<p> <span style=\"color: #000000;\">Salah satu pilihannya adalah dengan menggunakan bentuk regresi logistik yang dikenakan sanksi seperti regresi logistik laso atau regularisasi jaring elastis.<\/span><\/p>\n<p> <span style=\"color: #000000;\">Lihat paket <a href=\"https:\/\/cran.r-project.org\/web\/packages\/glmnet\/glmnet.pdf\" target=\"_blank\" rel=\"noopener\">glmnet<\/a> untuk opsi tentang cara menerapkan regresi logistik yang dikenakan sanksi di R.<\/span><\/p>\n<p> <span style=\"color: #000000;\"><strong>Metode 2: Gunakan variabel prediktor untuk memprediksi variabel respon dengan sempurna.<\/strong><\/span><\/p>\n<p> <span style=\"color: #000000;\">Jika Anda menduga bahwa pemisahan sempurna ini mungkin ada dalam populasi, Anda cukup menggunakan variabel prediktor ini untuk memprediksi dengan sempurna nilai variabel respons.<\/span><\/p>\n<p> <span style=\"color: #000000;\">Misalnya, pada skenario di atas, kita melihat bahwa variabel respon <strong>y<\/strong> selalu sama dengan 0 ketika variabel prediktor <strong>x<\/strong> kurang dari 1.<\/span><\/p>\n<p> <span style=\"color: #000000;\">Jika kita mencurigai bahwa hubungan ini berlaku pada keseluruhan populasi, kita selalu dapat memprediksi bahwa nilai <strong>y<\/strong> akan menjadi 0 ketika <strong>x<\/strong> kurang dari 1 dan tidak perlu khawatir untuk menerapkan model regresi logistik yang dikenakan sanksi.<\/span><\/p>\n<h3> <span style=\"color: #000000;\"><strong>Sumber daya tambahan<\/strong><\/span><\/h3>\n<p> <span style=\"color: #000000;\">Tutorial berikut memberikan informasi tambahan tentang penggunaan fungsi <strong>glm()<\/strong> di R:<\/span><\/p>\n<p> <a href=\"https:\/\/statorials.org\/id\/glm-vs-lm-di-r\/\" target=\"_blank\" rel=\"noopener\">Perbedaan antara glm dan lm di R<\/a><br \/> <a href=\"https:\/\/statorials.org\/id\/r-glm-memprediksi\/\" target=\"_blank\" rel=\"noopener\">Cara menggunakan fungsi prediksi dengan glm di R<\/a><br \/> <a href=\"https:\/\/statorials.org\/id\/glm-fit-dipasang-probabilitas-secara-numerik-0-atau-1-terjadi\/\" target=\"_blank\" rel=\"noopener\">Cara menangani: glm.fit: probabilitas yang disesuaikan secara numerik 0 atau 1 terjadi<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Peringatan umum yang mungkin Anda temui di R adalah: glm.fit: algorithm did not converge Peringatan ini sering terjadi ketika Anda mencoba menyesuaikan model regresi logistik di R dan melihat pemisahan yang sempurna , yaitu variabel prediktor mampu memisahkan variabel respons dengan sempurna menjadi 0 dan 1. Contoh berikut menunjukkan cara menangani peringatan ini dalam praktiknya. [&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":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v21.5 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Cara menangani peringatan R: glm.fit: Algoritma belum menyatu - Statorials<\/title>\n<meta name=\"description\" content=\"Tutorial ini menjelaskan cara menangani pesan peringatan berikut di R: glm.fit: Algoritma belum konvergen.\" \/>\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\/id\/algoritma-glm-fit-tidak-konvergen\/\" \/>\n<meta property=\"og:locale\" content=\"id_ID\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Cara menangani peringatan R: glm.fit: Algoritma belum menyatu - Statorials\" \/>\n<meta property=\"og:description\" content=\"Tutorial ini menjelaskan cara menangani pesan peringatan berikut di R: glm.fit: Algoritma belum konvergen.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/statorials.org\/id\/algoritma-glm-fit-tidak-konvergen\/\" \/>\n<meta property=\"og:site_name\" content=\"Statorials\" \/>\n<meta property=\"article:published_time\" content=\"2023-07-23T01:36:42+00:00\" \/>\n<meta name=\"author\" content=\"Benjamin anderson\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Ditulis oleh\" \/>\n\t<meta name=\"twitter:data1\" content=\"Benjamin anderson\" \/>\n\t<meta name=\"twitter:label2\" content=\"Estimasi waktu membaca\" \/>\n\t<meta name=\"twitter:data2\" content=\"2 menit\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/statorials.org\/id\/algoritma-glm-fit-tidak-konvergen\/\",\"url\":\"https:\/\/statorials.org\/id\/algoritma-glm-fit-tidak-konvergen\/\",\"name\":\"Cara menangani peringatan R: glm.fit: Algoritma belum menyatu - Statorials\",\"isPartOf\":{\"@id\":\"https:\/\/statorials.org\/id\/#website\"},\"datePublished\":\"2023-07-23T01:36:42+00:00\",\"dateModified\":\"2023-07-23T01:36:42+00:00\",\"author\":{\"@id\":\"https:\/\/statorials.org\/id\/#\/schema\/person\/3d17a1160dd2d052b7c78e502cb9ec81\"},\"description\":\"Tutorial ini menjelaskan cara menangani pesan peringatan berikut di R: glm.fit: Algoritma belum konvergen.\",\"breadcrumb\":{\"@id\":\"https:\/\/statorials.org\/id\/algoritma-glm-fit-tidak-konvergen\/#breadcrumb\"},\"inLanguage\":\"id\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/statorials.org\/id\/algoritma-glm-fit-tidak-konvergen\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/statorials.org\/id\/algoritma-glm-fit-tidak-konvergen\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/statorials.org\/id\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Cara menangani r peringatan: glm.fit: algoritma tidak menyatu\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/statorials.org\/id\/#website\",\"url\":\"https:\/\/statorials.org\/id\/\",\"name\":\"Statorials\",\"description\":\"Panduan anda untuk kompetensi statistik!\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/statorials.org\/id\/?s={search_term_string}\"},\"query-input\":\"required name=search_term_string\"}],\"inLanguage\":\"id\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/statorials.org\/id\/#\/schema\/person\/3d17a1160dd2d052b7c78e502cb9ec81\",\"name\":\"Benjamin anderson\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"id\",\"@id\":\"https:\/\/statorials.org\/id\/#\/schema\/person\/image\/\",\"url\":\"http:\/\/statorials.org\/id\/wp-content\/uploads\/2023\/10\/Dr.-Benjamin-Anderson-96x96.jpg\",\"contentUrl\":\"http:\/\/statorials.org\/id\/wp-content\/uploads\/2023\/10\/Dr.-Benjamin-Anderson-96x96.jpg\",\"caption\":\"Benjamin anderson\"},\"description\":\"Halo, saya Benjamin, pensiunan profesor statistika yang menjadi guru Statorial yang berdedikasi. Dengan pengalaman dan keahlian yang luas di bidang statistika, saya ingin berbagi ilmu untuk memberdayakan mahasiswa melalui Statorials. Baca selengkapnya\",\"sameAs\":[\"http:\/\/statorials.org\/id\"]}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Cara menangani peringatan R: glm.fit: Algoritma belum menyatu - Statorials","description":"Tutorial ini menjelaskan cara menangani pesan peringatan berikut di R: glm.fit: Algoritma belum konvergen.","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\/id\/algoritma-glm-fit-tidak-konvergen\/","og_locale":"id_ID","og_type":"article","og_title":"Cara menangani peringatan R: glm.fit: Algoritma belum menyatu - Statorials","og_description":"Tutorial ini menjelaskan cara menangani pesan peringatan berikut di R: glm.fit: Algoritma belum konvergen.","og_url":"https:\/\/statorials.org\/id\/algoritma-glm-fit-tidak-konvergen\/","og_site_name":"Statorials","article_published_time":"2023-07-23T01:36:42+00:00","author":"Benjamin anderson","twitter_card":"summary_large_image","twitter_misc":{"Ditulis oleh":"Benjamin anderson","Estimasi waktu membaca":"2 menit"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/statorials.org\/id\/algoritma-glm-fit-tidak-konvergen\/","url":"https:\/\/statorials.org\/id\/algoritma-glm-fit-tidak-konvergen\/","name":"Cara menangani peringatan R: glm.fit: Algoritma belum menyatu - Statorials","isPartOf":{"@id":"https:\/\/statorials.org\/id\/#website"},"datePublished":"2023-07-23T01:36:42+00:00","dateModified":"2023-07-23T01:36:42+00:00","author":{"@id":"https:\/\/statorials.org\/id\/#\/schema\/person\/3d17a1160dd2d052b7c78e502cb9ec81"},"description":"Tutorial ini menjelaskan cara menangani pesan peringatan berikut di R: glm.fit: Algoritma belum konvergen.","breadcrumb":{"@id":"https:\/\/statorials.org\/id\/algoritma-glm-fit-tidak-konvergen\/#breadcrumb"},"inLanguage":"id","potentialAction":[{"@type":"ReadAction","target":["https:\/\/statorials.org\/id\/algoritma-glm-fit-tidak-konvergen\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/statorials.org\/id\/algoritma-glm-fit-tidak-konvergen\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/statorials.org\/id\/"},{"@type":"ListItem","position":2,"name":"Cara menangani r peringatan: glm.fit: algoritma tidak menyatu"}]},{"@type":"WebSite","@id":"https:\/\/statorials.org\/id\/#website","url":"https:\/\/statorials.org\/id\/","name":"Statorials","description":"Panduan anda untuk kompetensi statistik!","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/statorials.org\/id\/?s={search_term_string}"},"query-input":"required name=search_term_string"}],"inLanguage":"id"},{"@type":"Person","@id":"https:\/\/statorials.org\/id\/#\/schema\/person\/3d17a1160dd2d052b7c78e502cb9ec81","name":"Benjamin anderson","image":{"@type":"ImageObject","inLanguage":"id","@id":"https:\/\/statorials.org\/id\/#\/schema\/person\/image\/","url":"http:\/\/statorials.org\/id\/wp-content\/uploads\/2023\/10\/Dr.-Benjamin-Anderson-96x96.jpg","contentUrl":"http:\/\/statorials.org\/id\/wp-content\/uploads\/2023\/10\/Dr.-Benjamin-Anderson-96x96.jpg","caption":"Benjamin anderson"},"description":"Halo, saya Benjamin, pensiunan profesor statistika yang menjadi guru Statorial yang berdedikasi. Dengan pengalaman dan keahlian yang luas di bidang statistika, saya ingin berbagi ilmu untuk memberdayakan mahasiswa melalui Statorials. Baca selengkapnya","sameAs":["http:\/\/statorials.org\/id"]}]}},"yoast_meta":{"yoast_wpseo_title":"","yoast_wpseo_metadesc":"","yoast_wpseo_canonical":""},"_links":{"self":[{"href":"https:\/\/statorials.org\/id\/wp-json\/wp\/v2\/posts\/2256"}],"collection":[{"href":"https:\/\/statorials.org\/id\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/statorials.org\/id\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/statorials.org\/id\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/statorials.org\/id\/wp-json\/wp\/v2\/comments?post=2256"}],"version-history":[{"count":0,"href":"https:\/\/statorials.org\/id\/wp-json\/wp\/v2\/posts\/2256\/revisions"}],"wp:attachment":[{"href":"https:\/\/statorials.org\/id\/wp-json\/wp\/v2\/media?parent=2256"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/statorials.org\/id\/wp-json\/wp\/v2\/categories?post=2256"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/statorials.org\/id\/wp-json\/wp\/v2\/tags?post=2256"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}