{"id":1166,"date":"2023-07-27T10:31:36","date_gmt":"2023-07-27T10:31:36","guid":{"rendered":"https:\/\/statorials.org\/pt\/analise-discriminante-quadratica-em-r\/"},"modified":"2023-07-27T10:31:36","modified_gmt":"2023-07-27T10:31:36","slug":"analise-discriminante-quadratica-em-r","status":"publish","type":"post","link":"https:\/\/statorials.org\/pt\/analise-discriminante-quadratica-em-r\/","title":{"rendered":"An\u00e1lise discriminante quadr\u00e1tica em r (passo a passo)"},"content":{"rendered":"<p><\/p>\n<hr>\n<p><span style=\"color: #000000;\"><a href=\"https:\/\/statorials.org\/pt\/analise-discriminante-quadratica\/\" target=\"_blank\" rel=\"noopener noreferrer\">A an\u00e1lise discriminante quadr\u00e1tica<\/a> \u00e9 um m\u00e9todo que voc\u00ea pode usar quando possui um conjunto de vari\u00e1veis preditoras e deseja classificar uma <a href=\"https:\/\/statorials.org\/pt\/respostas-explicativas-das-variaveis\/\" target=\"_blank\" rel=\"noopener noreferrer\">vari\u00e1vel de resposta<\/a> em duas ou mais classes. \u00c9 considerado o equivalente n\u00e3o linear da <a href=\"https:\/\/statorials.org\/pt\/analise-discriminante-linear-em-r\/\" target=\"_blank\" rel=\"noopener noreferrer\">an\u00e1lise discriminante linear<\/a> .<\/span><\/p>\n<p> <span style=\"color: #000000;\">Este tutorial fornece um exemplo passo a passo de como realizar an\u00e1lise discriminante quadr\u00e1tica em R.<\/span><\/p>\n<h3> <span style=\"color: #000000;\"><strong>Etapa 1: carregue as bibliotecas necess\u00e1rias<\/strong><\/span><\/h3>\n<p> <span style=\"color: #000000;\">Primeiro, carregaremos as bibliotecas necess\u00e1rias para este exemplo:<\/span><\/p>\n<pre style=\"background-color: #ececec; font-size: 15px;\"> <span style=\"color: #000000;\"><b><span style=\"color: #993300;\">library<\/span> (MASS)\n<span style=\"color: #993300;\">library<\/span> (ggplot2)<\/b><\/span><\/pre>\n<h3> <span style=\"color: #000000;\"><strong>Etapa 2: carregar dados<\/strong><\/span><\/h3>\n<p> <span style=\"color: #000000;\">Para este exemplo, usaremos o conjunto de dados <strong>iris<\/strong> integrado em R. O c\u00f3digo a seguir mostra como carregar e exibir este conjunto de dados:<\/span><\/p>\n<pre style=\"background-color: #ececec; font-size: 15px;\"> <strong><span style=\"color: #008080;\">#attach <em>iris<\/em> dataset to make it easy to work with<\/span>\nattach(iris)\n\n<span style=\"color: #008080;\">#view structure of dataset\n<\/span>str(iris)\n\n'data.frame': 150 obs. of 5 variables:\n $ Sepal.Length: num 5.1 4.9 4.7 4.6 5 5.4 4.6 5 4.4 4.9 ...\n $ Sepal.Width: num 3.5 3 3.2 3.1 3.6 3.9 3.4 3.4 2.9 3.1 ...\n $Petal.Length: num 1.4 1.4 1.3 1.5 1.4 1.7 1.4 1.5 1.4 1.5 ...\n $Petal.Width: num 0.2 0.2 0.2 0.2 0.2 0.4 0.3 0.2 0.2 0.1 ...\n $ Species: Factor w\/ 3 levels \"setosa\",\"versicolor\",..: 1 1 1 1 1 1 1 ...\n<\/strong><\/pre>\n<p> <span style=\"color: #000000;\">Podemos ver que o conjunto de dados cont\u00e9m 5 vari\u00e1veis e 150 observa\u00e7\u00f5es no total.<\/span><\/p>\n<p> <span style=\"color: #000000;\">Para este exemplo, construiremos um modelo de an\u00e1lise discriminante quadr\u00e1tica para classificar as esp\u00e9cies \u00e0s quais pertence uma determinada flor.<\/span><\/p>\n<p> <span style=\"color: #000000;\">Usaremos as seguintes vari\u00e1veis preditoras no modelo:<\/span><\/p>\n<ul>\n<li> <span style=\"color: #000000;\">S\u00e9pala.comprimento<\/span><\/li>\n<li> <span style=\"color: #000000;\">S\u00e9pala.Largura<\/span><\/li>\n<li> <span style=\"color: #000000;\">P\u00e9tala.Comprimento<\/span><\/li>\n<li> <span style=\"color: #000000;\">P\u00e9tala.Largura<\/span><\/li>\n<\/ul>\n<p> <span style=\"color: #000000;\">E vamos us\u00e1-los para prever a vari\u00e1vel de resposta <em>Species<\/em> , que suporta as tr\u00eas classes potenciais a seguir:<\/span><\/p>\n<ul>\n<li> <span style=\"color: #000000;\">setosa<\/span><\/li>\n<li> <span style=\"color: #000000;\">versicolor<\/span><\/li>\n<li> <span style=\"color: #000000;\">Virg\u00ednia<\/span><\/li>\n<\/ul>\n<h3> <span style=\"color: #000000;\"><strong>Etapa 3: criar amostras de treinamento e teste<\/strong><\/span><\/h3>\n<p> <span style=\"color: #000000;\">A seguir, dividiremos o conjunto de dados em um conjunto de treinamento para treinar o modelo e um conjunto de teste para testar o modelo:<\/span><\/p>\n<pre style=\"background-color: #ececec; font-size: 15px;\"> <strong><span style=\"color: #008080;\">#make this example reproducible\n<\/span>set.seed(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> ), <span style=\"color: #3366ff;\">nrow<\/span> (iris), <span style=\"color: #3366ff;\">replace<\/span> = <span style=\"color: #008000;\">TRUE<\/span> , <span style=\"color: #3366ff;\">prob<\/span> =c(0.7,0.3))\ntrain &lt;- iris[sample, ]\ntest &lt;- iris[!sample, ] \n<\/strong><\/pre>\n<h3> <span style=\"color: #000000;\"><strong>Etapa 4: ajuste o modelo QDA<\/strong><\/span><\/h3>\n<p> <span style=\"color: #000000;\">A seguir, usaremos a <a href=\"https:\/\/www.rdocumentation.org\/packages\/MASS\/versions\/7.3-53\/topics\/qda\" target=\"_blank\" rel=\"noopener noreferrer\">fun\u00e7\u00e3o qda()<\/a> do pacote <strong>MASS<\/strong> para adaptar o modelo QDA aos nossos dados:<\/span><\/p>\n<pre style=\"background-color: #ececec; font-size: 15px;\"> <strong><span style=\"color: #008080;\">#fit QDA model\n<\/span>model &lt;- qda(Species~., data=train)\n\n<span style=\"color: #008080;\">#view model output<\/span>\nmodel\n\nCall:\nqda(Species ~ ., data = train)\n\nPrior probabilities of groups:\n    setosa versicolor virginica \n 0.3207547 0.3207547 0.3584906 \n\nGroup means:\n           Sepal.Length Sepal.Width Petal.Length Petal.Width\nsetosa 4.982353 3.411765 1.482353 0.2411765\nversicolor 5.994118 2.794118 4.358824 1.3676471\nvirginica 6.636842 2.973684 5.592105 2.0552632 \n<\/strong><\/pre>\n<p> <span style=\"color: #000000;\">Veja como interpretar os resultados do modelo:<\/span><\/p>\n<p> <span style=\"color: #000000;\"><strong>Probabilidades anteriores do grupo:<\/strong> representam as propor\u00e7\u00f5es de cada esp\u00e9cie no conjunto de treinamento. Por exemplo, 35,8% de todas as observa\u00e7\u00f5es no conjunto de treinamento foram para a esp\u00e9cie <em>virginica<\/em> .<\/span><\/p>\n<p> <span style=\"color: #000000;\"><strong>M\u00e9dias de grupo:<\/strong> exibem os valores m\u00e9dios de cada vari\u00e1vel preditora para cada esp\u00e9cie.<\/span><\/p>\n<h3> <span style=\"color: #000000;\"><strong>Etapa 5: use o modelo para fazer previs\u00f5es<\/strong><\/span><\/h3>\n<p> <span style=\"color: #000000;\">Depois de ajustar o modelo usando nossos dados de treinamento, podemos us\u00e1-lo para fazer previs\u00f5es sobre nossos dados de teste:<\/span><\/p>\n<pre style=\"background-color: #ececec; font-size: 15px;\"> <strong><span style=\"color: #008080;\">#use QDA model to make predictions on test data\n<\/span>predicted &lt;- <span style=\"color: #3366ff;\">predict<\/span> (model, test)\n\nnames(predicted)\n\n[1] \"class\" \"posterior\" \"x\"   \n<\/strong><\/pre>\n<p> <span style=\"color: #000000;\">Isso retorna uma lista com duas vari\u00e1veis:<\/span><\/p>\n<ul>\n<li> <span style=\"color: #000000;\"><strong>classe:<\/strong> a classe prevista<\/span><\/li>\n<li> <span style=\"color: #000000;\"><strong>posterior:<\/strong> A <a href=\"https:\/\/statorials.org\/pt\/probabilidade-posterior\/\" target=\"_blank\" rel=\"noopener noreferrer\">probabilidade posterior<\/a> de que uma observa\u00e7\u00e3o perten\u00e7a a cada classe<\/span><\/li>\n<\/ul>\n<p> <span style=\"color: #000000;\">Podemos visualizar rapidamente cada um desses resultados para as primeiras seis observa\u00e7\u00f5es em nosso conjunto de dados de teste:<\/span><\/p>\n<pre style=\"background-color: #ececec; font-size: 15px;\"> <strong><span style=\"color: #008080;\">#view predicted class for first six observations in test set\n<\/span>head(predicted$class)\n\n[1] setosa setosa setosa setosa setosa setosa\nLevels: setosa versicolor virginica\n\n<span style=\"color: #008080;\">#view posterior probabilities for first six observations in test set<\/span>\nhead(predicted$posterior)\n\n   setosa versicolor virginica\n4 1 7.224770e-20 1.642236e-29\n6 1 6.209196e-26 8.550911e-38\n7 1 1.248337e-21 8.132700e-32\n15 1 2.319705e-35 5.094803e-50\n17 1 1.396840e-29 9.586504e-43\n18 1 7.581165e-25 8.611321e-37\n<\/strong><\/pre>\n<h3> <span style=\"color: #000000;\"><strong>Etapa 6: avaliar o modelo<\/strong><\/span><\/h3>\n<p> <span style=\"color: #000000;\">Podemos usar o c\u00f3digo a seguir para ver qual porcentagem de observa\u00e7\u00f5es o modelo QDA previu corretamente a esp\u00e9cie:<\/span><\/p>\n<pre style=\"background-color: #ececec; font-size: 15px;\"> <strong><span style=\"color: #008080;\">#find accuracy of model\n<\/span>mean(predicted$class==test$Species)\n\n[1] 1<\/strong><\/pre>\n<p> <span style=\"color: #000000;\">Acontece que o modelo previu corretamente as esp\u00e9cies para <strong>100%<\/strong> das observa\u00e7\u00f5es em nosso conjunto de dados de teste.<\/span><\/p>\n<p> <span style=\"color: #000000;\">No mundo real, um modelo QDA raramente prev\u00ea corretamente os resultados de cada classe, mas esse conjunto de dados da \u00edris \u00e9 simplesmente constru\u00eddo de uma forma que os algoritmos de aprendizado de m\u00e1quina tendem a ter um desempenho muito bom.<\/span><\/p>\n<p> <span style=\"color: #000000;\">Voc\u00ea pode encontrar o c\u00f3digo R completo usado neste tutorial <a href=\"https:\/\/github.com\/Statorials\/R-Guides\/blob\/main\/quadratic_discriminant_analysis\" target=\"_blank\" rel=\"noopener noreferrer\">aqui<\/a> .<\/span><\/p>\n","protected":false},"excerpt":{"rendered":"<p>A an\u00e1lise discriminante quadr\u00e1tica \u00e9 um m\u00e9todo que voc\u00ea pode usar quando possui um conjunto de vari\u00e1veis preditoras e deseja classificar uma vari\u00e1vel de resposta em duas ou mais classes. \u00c9 considerado o equivalente n\u00e3o linear da an\u00e1lise discriminante linear . Este tutorial fornece um exemplo passo a passo de como realizar an\u00e1lise discriminante quadr\u00e1tica [&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-1166","post","type-post","status-publish","format-standard","hentry","category-guia"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v21.5 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>An\u00e1lise Discriminante Quadr\u00e1tica em R (passo a passo)<\/title>\n<meta name=\"description\" content=\"Este tutorial explica como realizar an\u00e1lise discriminante quadr\u00e1tica em R, incluindo um exemplo passo a passo.\" \/>\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\/pt\/analise-discriminante-quadratica-em-r\/\" \/>\n<meta property=\"og:locale\" content=\"pt_PT\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"An\u00e1lise Discriminante Quadr\u00e1tica em R (passo a passo)\" \/>\n<meta property=\"og:description\" content=\"Este tutorial explica como realizar an\u00e1lise discriminante quadr\u00e1tica em R, incluindo um exemplo passo a passo.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/statorials.org\/pt\/analise-discriminante-quadratica-em-r\/\" \/>\n<meta property=\"og:site_name\" content=\"Statorials\" \/>\n<meta property=\"article:published_time\" content=\"2023-07-27T10:31:36+00:00\" \/>\n<meta name=\"author\" content=\"Dr. benjamim anderson\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Escrito por\" \/>\n\t<meta name=\"twitter:data1\" content=\"Dr. benjamim anderson\" \/>\n\t<meta name=\"twitter:label2\" content=\"Tempo estimado de leitura\" \/>\n\t<meta name=\"twitter:data2\" content=\"3 minutos\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/statorials.org\/pt\/analise-discriminante-quadratica-em-r\/\",\"url\":\"https:\/\/statorials.org\/pt\/analise-discriminante-quadratica-em-r\/\",\"name\":\"An\u00e1lise Discriminante Quadr\u00e1tica em R (passo a passo)\",\"isPartOf\":{\"@id\":\"https:\/\/statorials.org\/pt\/#website\"},\"datePublished\":\"2023-07-27T10:31:36+00:00\",\"dateModified\":\"2023-07-27T10:31:36+00:00\",\"author\":{\"@id\":\"https:\/\/statorials.org\/pt\/#\/schema\/person\/e08f98e8db95e0aa9c310e1b27c9c666\"},\"description\":\"Este tutorial explica como realizar an\u00e1lise discriminante quadr\u00e1tica em R, incluindo um exemplo passo a passo.\",\"breadcrumb\":{\"@id\":\"https:\/\/statorials.org\/pt\/analise-discriminante-quadratica-em-r\/#breadcrumb\"},\"inLanguage\":\"pt-PT\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/statorials.org\/pt\/analise-discriminante-quadratica-em-r\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/statorials.org\/pt\/analise-discriminante-quadratica-em-r\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Lar\",\"item\":\"https:\/\/statorials.org\/pt\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"An\u00e1lise discriminante quadr\u00e1tica em r (passo a passo)\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/statorials.org\/pt\/#website\",\"url\":\"https:\/\/statorials.org\/pt\/\",\"name\":\"Statorials\",\"description\":\"O seu guia para a literacia estat\u00edstica!\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/statorials.org\/pt\/?s={search_term_string}\"},\"query-input\":\"required name=search_term_string\"}],\"inLanguage\":\"pt-PT\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/statorials.org\/pt\/#\/schema\/person\/e08f98e8db95e0aa9c310e1b27c9c666\",\"name\":\"Dr. benjamim anderson\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"pt-PT\",\"@id\":\"https:\/\/statorials.org\/pt\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/statorials.org\/pt\/wp-content\/uploads\/2023\/10\/Dr.-Benjamin-Anderson-96x96.jpg\",\"contentUrl\":\"https:\/\/statorials.org\/pt\/wp-content\/uploads\/2023\/10\/Dr.-Benjamin-Anderson-96x96.jpg\",\"caption\":\"Dr. benjamim anderson\"},\"description\":\"Ol\u00e1, sou Benjamin, um professor aposentado de estat\u00edstica que se tornou professor dedicado na Statorials. Com vasta experi\u00eancia e conhecimento na \u00e1rea de estat\u00edstica, estou empenhado em compartilhar meu conhecimento para capacitar os alunos por meio de Statorials. Saber mais\",\"sameAs\":[\"https:\/\/statorials.org\/pt\"]}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"An\u00e1lise Discriminante Quadr\u00e1tica em R (passo a passo)","description":"Este tutorial explica como realizar an\u00e1lise discriminante quadr\u00e1tica em R, incluindo um exemplo passo a passo.","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\/pt\/analise-discriminante-quadratica-em-r\/","og_locale":"pt_PT","og_type":"article","og_title":"An\u00e1lise Discriminante Quadr\u00e1tica em R (passo a passo)","og_description":"Este tutorial explica como realizar an\u00e1lise discriminante quadr\u00e1tica em R, incluindo um exemplo passo a passo.","og_url":"https:\/\/statorials.org\/pt\/analise-discriminante-quadratica-em-r\/","og_site_name":"Statorials","article_published_time":"2023-07-27T10:31:36+00:00","author":"Dr. benjamim anderson","twitter_card":"summary_large_image","twitter_misc":{"Escrito por":"Dr. benjamim anderson","Tempo estimado de leitura":"3 minutos"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/statorials.org\/pt\/analise-discriminante-quadratica-em-r\/","url":"https:\/\/statorials.org\/pt\/analise-discriminante-quadratica-em-r\/","name":"An\u00e1lise Discriminante Quadr\u00e1tica em R (passo a passo)","isPartOf":{"@id":"https:\/\/statorials.org\/pt\/#website"},"datePublished":"2023-07-27T10:31:36+00:00","dateModified":"2023-07-27T10:31:36+00:00","author":{"@id":"https:\/\/statorials.org\/pt\/#\/schema\/person\/e08f98e8db95e0aa9c310e1b27c9c666"},"description":"Este tutorial explica como realizar an\u00e1lise discriminante quadr\u00e1tica em R, incluindo um exemplo passo a passo.","breadcrumb":{"@id":"https:\/\/statorials.org\/pt\/analise-discriminante-quadratica-em-r\/#breadcrumb"},"inLanguage":"pt-PT","potentialAction":[{"@type":"ReadAction","target":["https:\/\/statorials.org\/pt\/analise-discriminante-quadratica-em-r\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/statorials.org\/pt\/analise-discriminante-quadratica-em-r\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Lar","item":"https:\/\/statorials.org\/pt\/"},{"@type":"ListItem","position":2,"name":"An\u00e1lise discriminante quadr\u00e1tica em r (passo a passo)"}]},{"@type":"WebSite","@id":"https:\/\/statorials.org\/pt\/#website","url":"https:\/\/statorials.org\/pt\/","name":"Statorials","description":"O seu guia para a literacia estat\u00edstica!","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/statorials.org\/pt\/?s={search_term_string}"},"query-input":"required name=search_term_string"}],"inLanguage":"pt-PT"},{"@type":"Person","@id":"https:\/\/statorials.org\/pt\/#\/schema\/person\/e08f98e8db95e0aa9c310e1b27c9c666","name":"Dr. benjamim anderson","image":{"@type":"ImageObject","inLanguage":"pt-PT","@id":"https:\/\/statorials.org\/pt\/#\/schema\/person\/image\/","url":"https:\/\/statorials.org\/pt\/wp-content\/uploads\/2023\/10\/Dr.-Benjamin-Anderson-96x96.jpg","contentUrl":"https:\/\/statorials.org\/pt\/wp-content\/uploads\/2023\/10\/Dr.-Benjamin-Anderson-96x96.jpg","caption":"Dr. benjamim anderson"},"description":"Ol\u00e1, sou Benjamin, um professor aposentado de estat\u00edstica que se tornou professor dedicado na Statorials. Com vasta experi\u00eancia e conhecimento na \u00e1rea de estat\u00edstica, estou empenhado em compartilhar meu conhecimento para capacitar os alunos por meio de Statorials. Saber mais","sameAs":["https:\/\/statorials.org\/pt"]}]}},"yoast_meta":{"yoast_wpseo_title":"","yoast_wpseo_metadesc":"","yoast_wpseo_canonical":""},"_links":{"self":[{"href":"https:\/\/statorials.org\/pt\/wp-json\/wp\/v2\/posts\/1166","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/statorials.org\/pt\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/statorials.org\/pt\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/statorials.org\/pt\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/statorials.org\/pt\/wp-json\/wp\/v2\/comments?post=1166"}],"version-history":[{"count":0,"href":"https:\/\/statorials.org\/pt\/wp-json\/wp\/v2\/posts\/1166\/revisions"}],"wp:attachment":[{"href":"https:\/\/statorials.org\/pt\/wp-json\/wp\/v2\/media?parent=1166"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/statorials.org\/pt\/wp-json\/wp\/v2\/categories?post=1166"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/statorials.org\/pt\/wp-json\/wp\/v2\/tags?post=1166"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}