{"id":4442,"date":"2023-07-11T02:36:29","date_gmt":"2023-07-11T02:36:29","guid":{"rendered":"https:\/\/statorials.org\/it\/r-previsione-della-regressione-logistica\/"},"modified":"2023-07-11T02:36:29","modified_gmt":"2023-07-11T02:36:29","slug":"r-previsione-della-regressione-logistica","status":"publish","type":"post","link":"https:\/\/statorials.org\/it\/r-previsione-della-regressione-logistica\/","title":{"rendered":"Come utilizzare predict() con il modello di regressione logistica in r"},"content":{"rendered":"<p><\/p>\n<hr>\n<p><span style=\"color: #000000;\">Una volta adattato un <a href=\"https:\/\/statorials.org\/it\/regressione-logistica-1\/\" target=\"_blank\" rel=\"noopener\">modello di regressione logistica<\/a> in R, possiamo utilizzare la funzione <strong>predit()<\/strong> per prevedere il valore di risposta di una nuova osservazione che il modello non ha mai visto prima.<\/span><\/p>\n<p> <span style=\"color: #000000;\">Questa funzione utilizza la seguente sintassi:<\/span><\/p>\n<p> <span style=\"color: #000000;\"><strong>predire (oggetto, nuovi dati, tipo = &#8220;risposta&#8221;)<\/strong><\/span><\/p>\n<p> <span style=\"color: #000000;\">Oro:<\/span><\/p>\n<ul>\n<li> <span style=\"color: #000000;\"><strong>oggetto:<\/strong> il nome del modello di regressione logistica<\/span><\/li>\n<li> <span style=\"color: #000000;\"><strong>newdata:<\/strong> il nome del nuovo frame di dati per cui fare previsioni<\/span><\/li>\n<li> <span style=\"color: #000000;\"><strong>type:<\/strong> il tipo di previsione da effettuare<\/span><\/li>\n<\/ul>\n<p> <span style=\"color: #000000;\">L&#8217;esempio seguente mostra come utilizzare questa funzione nella pratica.<\/span><\/p>\n<h2> <span style=\"color: #000000;\"><strong>Esempio: utilizzo di Predict() con un modello di regressione logistica in R<\/strong><\/span><\/h2>\n<p> <span style=\"color: #000000;\">Per questo esempio, utilizzeremo il set di dati R integrato chiamato <a href=\"https:\/\/statorials.org\/it\/set-di-dati-mtcars-r\/\" target=\"_blank\" rel=\"noopener\">mtcars<\/a> :<\/span><\/p>\n<pre style=\"background-color: #ececec; font-size: 15px;\"> <strong><span style=\"color: #008080;\">#view first six rows of <em>mtcars<\/em> dataset<\/span>\nhead(mtcars)\n\n                   mpg cyl disp hp drat wt qsec vs am gear carb\nMazda RX4 21.0 6 160 110 3.90 2.620 16.46 0 1 4 4\nMazda RX4 Wag 21.0 6 160 110 3.90 2.875 17.02 0 1 4 4\nDatsun 710 22.8 4 108 93 3.85 2.320 18.61 1 1 4 1\nHornet 4 Drive 21.4 6 258 110 3.08 3.215 19.44 1 0 3 1\nHornet Sportabout 18.7 8 360 175 3.15 3.440 17.02 0 0 3 2\nValiant 18.1 6 225 105 2.76 3,460 20.22 1 0 3 1<\/strong><\/pre>\n<p> <span style=\"color: #000000;\">Adatteremo il seguente modello di regressione logistica in cui utilizziamo le variabili <strong>disp<\/strong> e <strong>hp<\/strong> per prevedere la variabile di risposta <strong>am<\/strong> (il tipo di trasmissione dell&#8217;auto: 0 = automatico, 1 = manuale):<\/span><\/p>\n<pre style=\"background-color: #ececec; font-size: 15px;\"> <strong><span style=\"color: #008080;\">#fit logistic regression model<\/span>\nmodel &lt;- glm(am ~ disp + hp, data=mtcars, family=binomial)\n\n<span style=\"color: #008080;\">#view model summary\n<\/span>summary(model)\n\nCall:\nglm(formula = am ~ disp + hp, family = binomial, data = mtcars)\n\nDeviance Residuals: \n    Min 1Q Median 3Q Max  \n-1.9665 -0.3090 -0.0017 0.3934 1.3682  \n\nCoefficients:\n            Estimate Std. Error z value Pr(&gt;|z|)  \n(Intercept) 1.40342 1.36757 1.026 0.3048  \navailable -0.09518 0.04800 -1.983 0.0474 *\nhp 0.12170 0.06777 1.796 0.0725 .\n---\nSignificant. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1\n\n(Dispersion parameter for binomial family taken to be 1)\n\n    Null deviance: 43,230 on 31 degrees of freedom\nResidual deviance: 16,713 on 29 degrees of freedom\nAIC: 22,713\n\nNumber of Fisher Scoring iterations: 8\n<\/strong><\/pre>\n<p> <span style=\"color: #000000;\">Possiamo quindi creare un nuovo data frame contenente informazioni su otto auto che il modello non ha mai visto prima e utilizzare la funzione <strong>predit()<\/strong> per prevedere la probabilit\u00e0 che una nuova auto avr\u00e0 un cambio automatico (am=0) o un cambio manuale ( sono =1):<\/span><\/p>\n<pre style=\"background-color: #ececec; font-size: 15px;\"> <strong><span style=\"color: #008080;\">#define new data frame\n<span style=\"color: #000000;\">newdata = data. <span style=\"color: #3366ff;\">frame<\/span> (disp=c(200, 180, 160, 140, 120, 120, 100, 160),\n                     hp=c(100, 90, 108, 90, 80, 90, 80, 90),\n                     am=c(0, 0, 0, 1, 0, 1, 1, 1))\n\n<span style=\"color: #008080;\">#view data frame\n<\/span>newdata\n\n<span style=\"color: #008080;\">#use model to predict value of am for all new cars\n<\/span>newdata$am_prob &lt;- predict(model, newdata, type=\" <span style=\"color: #ff0000;\">response<\/span> \")\n\n<span style=\"color: #008080;\">#view updated data frame\n<\/span>newdata\n\n  disp hp am am_prob\n1 200 100 0 0.004225640\n2 180 90 0 0.008361069\n3 160 108 0 0.335916069\n4 140 90 1 0.275162866\n5 120 80 0 0.429961894\n6 120 90 1 0.718090728\n7 100 80 1 0.835013994\n8 160 90 1 0.053546152<\/span><\/span><\/strong><\/pre>\n<p> <span style=\"color: #000000;\">Ecco come interpretare il risultato:<\/span><\/p>\n<ul>\n<li> <span style=\"color: #000000;\">La probabilit\u00e0 che l&#8217;auto 1 abbia un cambio manuale \u00e8 <strong>0,004<\/strong> .<\/span><\/li>\n<li> <span style=\"color: #000000;\">La probabilit\u00e0 che l&#8217;auto 2 abbia un cambio manuale \u00e8 <strong>0,008<\/strong> .<\/span><\/li>\n<li> <span style=\"color: #000000;\">La probabilit\u00e0 che l&#8217;auto 3 abbia un cambio manuale \u00e8 <strong>0,336<\/strong> .<\/span><\/li>\n<\/ul>\n<p> <span style=\"color: #000000;\">E cos\u00ec via.<\/span><\/p>\n<p> <span style=\"color: #000000;\">Possiamo anche utilizzare la funzione <strong>table()<\/strong> per creare una matrice di confusione che mostri i valori am effettivi rispetto ai valori previsti dal modello:<\/span><\/p>\n<pre style=\"background-color: #ececec; font-size: 15px;\"> <strong><span style=\"color: #008080;\">#create vector that contains 0 or 1 depending on predicted value of am\n<span style=\"color: #000000;\">am_pred = rep(0, dim(newdata)[1])\nam_pred[newdata$am_prob &gt; .5] = 1\n\n<span style=\"color: #008080;\">#create confusion matrix\n<\/span>table(am_pred, newdata$am)\n\nam_pred 0 1\n      0 4 2\n      1 0 2\n<\/span><\/span><\/strong><\/pre>\n<p> <span style=\"color: #000000;\">Infine, possiamo utilizzare la funzione <strong>Mean()<\/strong> per calcolare la percentuale di osservazioni nel nuovo database per le quali il modello ha previsto correttamente il valore di <strong>am<\/strong> :<\/span><\/p>\n<pre style=\"background-color: #ececec; font-size: 15px;\"> <strong><span style=\"color: #008080;\">#calculate percentage of observations the model correctly predicted response value for\n<span style=\"color: #000000;\">mean(am_pred == newdata$am)\n\n[1] 0.75\n<\/span><\/span><\/strong><\/pre>\n<p> <span style=\"color: #000000;\">Possiamo vedere che il modello ha previsto correttamente il valore <strong>am<\/strong> per <strong>il 75%<\/strong> delle auto nel nuovo database.<\/span><\/p>\n<h2> <span style=\"color: #000000;\"><strong>Risorse addizionali<\/strong><\/span><\/h2>\n<p> <span style=\"color: #000000;\">I seguenti tutorial spiegano come eseguire altre attivit\u00e0 comuni in R:<\/span><\/p>\n<p> <a href=\"https:\/\/statorials.org\/it\/regressione-lineare-semplice-in-r\/\" target=\"_blank\" rel=\"noopener\">Come eseguire una regressione lineare semplice in R<\/a><br \/> <a href=\"https:\/\/statorials.org\/it\/regressione-lineare-multipla-r\/\" target=\"_blank\" rel=\"noopener\">Come eseguire la regressione lineare multipla in R<\/a><br \/> <a href=\"https:\/\/statorials.org\/it\/regressione-polinomiale-r\/\" target=\"_blank\" rel=\"noopener\">Come eseguire la regressione polinomiale in R<\/a><br \/> <a href=\"https:\/\/statorials.org\/it\/intervallo-di-previsione-r\/\" target=\"_blank\" rel=\"noopener\">Come creare un intervallo di previsione in R<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Una volta adattato un modello di regressione logistica in R, possiamo utilizzare la funzione predit() per prevedere il valore di risposta di una nuova osservazione che il modello non ha mai visto prima. Questa funzione utilizza la seguente sintassi: predire (oggetto, nuovi dati, tipo = &#8220;risposta&#8221;) Oro: oggetto: il nome del modello di regressione logistica [&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>Come utilizzare predic() con il modello di regressione logistica in R - Stology<\/title>\n<meta name=\"description\" content=\"Questo tutorial spiega come effettuare previsioni su nuovi dati utilizzando un modello di regressione logistica in R, con un esempio.\" \/>\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\/it\/r-previsione-della-regressione-logistica\/\" \/>\n<meta property=\"og:locale\" content=\"it_IT\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Come utilizzare predic() con il modello di regressione logistica in R - Stology\" \/>\n<meta property=\"og:description\" content=\"Questo tutorial spiega come effettuare previsioni su nuovi dati utilizzando un modello di regressione logistica in R, con un esempio.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/statorials.org\/it\/r-previsione-della-regressione-logistica\/\" \/>\n<meta property=\"og:site_name\" content=\"Statorials\" \/>\n<meta property=\"article:published_time\" content=\"2023-07-11T02:36:29+00:00\" \/>\n<meta name=\"author\" content=\"Benjamin anderson\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Benjamin anderson\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"3 minuti\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/statorials.org\/it\/r-previsione-della-regressione-logistica\/\",\"url\":\"https:\/\/statorials.org\/it\/r-previsione-della-regressione-logistica\/\",\"name\":\"Come utilizzare predic() con il modello di regressione logistica in R - Stology\",\"isPartOf\":{\"@id\":\"https:\/\/statorials.org\/it\/#website\"},\"datePublished\":\"2023-07-11T02:36:29+00:00\",\"dateModified\":\"2023-07-11T02:36:29+00:00\",\"author\":{\"@id\":\"https:\/\/statorials.org\/it\/#\/schema\/person\/0896f191fb9fb019f2cd8623112cb3ae\"},\"description\":\"Questo tutorial spiega come effettuare previsioni su nuovi dati utilizzando un modello di regressione logistica in R, con un esempio.\",\"breadcrumb\":{\"@id\":\"https:\/\/statorials.org\/it\/r-previsione-della-regressione-logistica\/#breadcrumb\"},\"inLanguage\":\"it-IT\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/statorials.org\/it\/r-previsione-della-regressione-logistica\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/statorials.org\/it\/r-previsione-della-regressione-logistica\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Casa\",\"item\":\"https:\/\/statorials.org\/it\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Come utilizzare predict() con il modello di regressione logistica in r\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/statorials.org\/it\/#website\",\"url\":\"https:\/\/statorials.org\/it\/\",\"name\":\"Statorials\",\"description\":\"La tua guida all&#039;alfabetizzazione statistica!\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/statorials.org\/it\/?s={search_term_string}\"},\"query-input\":\"required name=search_term_string\"}],\"inLanguage\":\"it-IT\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/statorials.org\/it\/#\/schema\/person\/0896f191fb9fb019f2cd8623112cb3ae\",\"name\":\"Benjamin anderson\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"it-IT\",\"@id\":\"https:\/\/statorials.org\/it\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/statorials.org\/it\/wp-content\/uploads\/2023\/10\/Dr.-Benjamin-Anderson-96x96.jpg\",\"contentUrl\":\"https:\/\/statorials.org\/it\/wp-content\/uploads\/2023\/10\/Dr.-Benjamin-Anderson-96x96.jpg\",\"caption\":\"Benjamin anderson\"},\"description\":\"Ciao, sono Benjamin, un professore di statistica in pensione diventato insegnante dedicato di Statorials. Con una vasta esperienza e competenza nel campo della statistica, sono ansioso di condividere le mie conoscenze per potenziare gli studenti attraverso Statorials. Scopri di pi\u00f9\",\"sameAs\":[\"https:\/\/statorials.org\/it\"]}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Come utilizzare predic() con il modello di regressione logistica in R - Stology","description":"Questo tutorial spiega come effettuare previsioni su nuovi dati utilizzando un modello di regressione logistica in R, con un esempio.","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\/it\/r-previsione-della-regressione-logistica\/","og_locale":"it_IT","og_type":"article","og_title":"Come utilizzare predic() con il modello di regressione logistica in R - Stology","og_description":"Questo tutorial spiega come effettuare previsioni su nuovi dati utilizzando un modello di regressione logistica in R, con un esempio.","og_url":"https:\/\/statorials.org\/it\/r-previsione-della-regressione-logistica\/","og_site_name":"Statorials","article_published_time":"2023-07-11T02:36:29+00:00","author":"Benjamin anderson","twitter_card":"summary_large_image","twitter_misc":{"Written by":"Benjamin anderson","Est. reading time":"3 minuti"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/statorials.org\/it\/r-previsione-della-regressione-logistica\/","url":"https:\/\/statorials.org\/it\/r-previsione-della-regressione-logistica\/","name":"Come utilizzare predic() con il modello di regressione logistica in R - Stology","isPartOf":{"@id":"https:\/\/statorials.org\/it\/#website"},"datePublished":"2023-07-11T02:36:29+00:00","dateModified":"2023-07-11T02:36:29+00:00","author":{"@id":"https:\/\/statorials.org\/it\/#\/schema\/person\/0896f191fb9fb019f2cd8623112cb3ae"},"description":"Questo tutorial spiega come effettuare previsioni su nuovi dati utilizzando un modello di regressione logistica in R, con un esempio.","breadcrumb":{"@id":"https:\/\/statorials.org\/it\/r-previsione-della-regressione-logistica\/#breadcrumb"},"inLanguage":"it-IT","potentialAction":[{"@type":"ReadAction","target":["https:\/\/statorials.org\/it\/r-previsione-della-regressione-logistica\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/statorials.org\/it\/r-previsione-della-regressione-logistica\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Casa","item":"https:\/\/statorials.org\/it\/"},{"@type":"ListItem","position":2,"name":"Come utilizzare predict() con il modello di regressione logistica in r"}]},{"@type":"WebSite","@id":"https:\/\/statorials.org\/it\/#website","url":"https:\/\/statorials.org\/it\/","name":"Statorials","description":"La tua guida all&#039;alfabetizzazione statistica!","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/statorials.org\/it\/?s={search_term_string}"},"query-input":"required name=search_term_string"}],"inLanguage":"it-IT"},{"@type":"Person","@id":"https:\/\/statorials.org\/it\/#\/schema\/person\/0896f191fb9fb019f2cd8623112cb3ae","name":"Benjamin anderson","image":{"@type":"ImageObject","inLanguage":"it-IT","@id":"https:\/\/statorials.org\/it\/#\/schema\/person\/image\/","url":"https:\/\/statorials.org\/it\/wp-content\/uploads\/2023\/10\/Dr.-Benjamin-Anderson-96x96.jpg","contentUrl":"https:\/\/statorials.org\/it\/wp-content\/uploads\/2023\/10\/Dr.-Benjamin-Anderson-96x96.jpg","caption":"Benjamin anderson"},"description":"Ciao, sono Benjamin, un professore di statistica in pensione diventato insegnante dedicato di Statorials. Con una vasta esperienza e competenza nel campo della statistica, sono ansioso di condividere le mie conoscenze per potenziare gli studenti attraverso Statorials. Scopri di pi\u00f9","sameAs":["https:\/\/statorials.org\/it"]}]}},"yoast_meta":{"yoast_wpseo_title":"","yoast_wpseo_metadesc":"","yoast_wpseo_canonical":""},"_links":{"self":[{"href":"https:\/\/statorials.org\/it\/wp-json\/wp\/v2\/posts\/4442"}],"collection":[{"href":"https:\/\/statorials.org\/it\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/statorials.org\/it\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/statorials.org\/it\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/statorials.org\/it\/wp-json\/wp\/v2\/comments?post=4442"}],"version-history":[{"count":0,"href":"https:\/\/statorials.org\/it\/wp-json\/wp\/v2\/posts\/4442\/revisions"}],"wp:attachment":[{"href":"https:\/\/statorials.org\/it\/wp-json\/wp\/v2\/media?parent=4442"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/statorials.org\/it\/wp-json\/wp\/v2\/categories?post=4442"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/statorials.org\/it\/wp-json\/wp\/v2\/tags?post=4442"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}