{"id":3962,"date":"2023-07-14T12:04:48","date_gmt":"2023-07-14T12:04:48","guid":{"rendered":"https:\/\/statorials.org\/pt\/erro-r-colmeans-x-deve-ser-numerico\/"},"modified":"2023-07-14T12:04:48","modified_gmt":"2023-07-14T12:04:48","slug":"erro-r-colmeans-x-deve-ser-numerico","status":"publish","type":"post","link":"https:\/\/statorials.org\/pt\/erro-r-colmeans-x-deve-ser-numerico\/","title":{"rendered":"Como corrigir: erro em colmeans(x, na.rm = true): &#39;x&#39; deve ser num\u00e9rico"},"content":{"rendered":"<p><\/p>\n<hr>\n<p><span style=\"color: #000000;\">Uma mensagem de erro que voc\u00ea pode encontrar ao usar R \u00e9:<\/span><\/p>\n<pre style=\"background-color: #ececec; font-size: 15px;\"> <strong>Error in colMeans(x, na.rm = TRUE): 'x' must be numeric\n<\/strong><\/pre>\n<p> <span style=\"color: #000000;\">Este erro normalmente ocorre quando voc\u00ea tenta usar a fun\u00e7\u00e3o <strong>prcomp()<\/strong> para realizar <a href=\"https:\/\/statorials.org\/pt\/analise-de-componentes-principais-em-r\/\" target=\"_blank\" rel=\"noopener\">a an\u00e1lise de componentes principais em R<\/a> , quando uma ou mais colunas no quadro de dados que voc\u00ea est\u00e1 usando n\u00e3o s\u00e3o num\u00e9ricas.<\/span><\/p>\n<p> <span style=\"color: #000000;\">Existem duas maneiras de contornar esse erro:<\/span><\/p>\n<p> <span style=\"color: #000000;\"><strong>M\u00e9todo 1:<\/strong> converter colunas n\u00e3o num\u00e9ricas em colunas num\u00e9ricas<\/span><\/p>\n<p> <span style=\"color: #000000;\"><strong>M\u00e9todo 2:<\/strong> remover colunas n\u00e3o num\u00e9ricas do quadro de dados<\/span><\/p>\n<p> <span style=\"color: #000000;\">Os exemplos a seguir mostram como usar cada m\u00e9todo na pr\u00e1tica.<\/span><\/p>\n<h2> <span style=\"color: #000000;\"><strong>Como reproduzir o erro<\/strong><\/span><\/h2>\n<p> <span style=\"color: #000000;\">Suponha que estejamos tentando realizar uma an\u00e1lise de componentes principais no seguinte quadro de dados que cont\u00e9m uma coluna de caracteres:<\/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> (team=c('A', 'A', 'C', 'B', 'C', 'B', 'B', 'C', 'A'),\n                 points=c(12, 8, 26, 25, 38, 30, 24, 24, 15),\n                 rebounds=c(10, 4, 5, 5, 4, 3, 8, 18, 22))\n\n<span style=\"color: #008080;\">#view data frame\n<\/span>df\n\n  team points rebounds\n1 to 12 10\n2 to 8 4\n3 C 26 5\n4 B 25 5\n5 C 38 4\n6 B 30 3\n7 B 24 8\n8 C 24 18\n9 to 15 22\n\n<span style=\"color: #008080;\">#attempt to calculate principal components\n<\/span>prcomp(df)\n\nError in colMeans(x, na.rm = TRUE): 'x' must be numeric\n<\/span><\/span><\/strong><\/pre>\n<p> <span style=\"color: #000000;\">A coluna <strong>equipe<\/strong> \u00e9 uma coluna de caracteres, o que causa um erro ao tentar usar a fun\u00e7\u00e3o <strong>prcomp()<\/strong> .<\/span><\/p>\n<h2> <span style=\"color: #000000;\"><strong>M\u00e9todo 1: converter colunas n\u00e3o num\u00e9ricas em colunas num\u00e9ricas<\/strong><\/span><\/h2>\n<p> <span style=\"color: #000000;\">Uma maneira de evitar esse erro \u00e9 converter a coluna <strong>da equipe<\/strong> em uma coluna num\u00e9rica antes de usar a fun\u00e7\u00e3o <strong>prcomp()<\/strong> :<\/span><\/p>\n<pre style=\"background-color: #ececec; font-size: 15px;\"> <strong><span style=\"color: #008080;\"><span style=\"color: #000000;\"><span style=\"color: #008080;\">#convert character column to numeric\n<\/span>df$team &lt;- as. <span style=\"color: #3366ff;\">numeric<\/span> (as. <span style=\"color: #3366ff;\">factor<\/span> (df$team))\n\n<span style=\"color: #008080;\">#view updated data frame\n<\/span>df\n\n  team points rebounds\n1 1 12 10\n2 1 8 4\n3 3 26 5\n4 2 25 5\n5 3 38 4\n6 2 30 3\n7 2 24 8\n8 3 24 18\n9 1 15 22\n\n<span style=\"color: #008080;\">#calculate main components\n<\/span>prcomp(df)\n\nStandard deviations (1, .., p=3):\n[1] 9.8252704 6.0990235 0.4880538\n\nRotation (nxk) = (3 x 3):\n                 PC1 PC2 PC3\nteam -0.06810285 0.04199272 0.99679417\npoints -0.91850806 0.38741460 -0.07907512\nrebounds 0.38949319 0.92094872 -0.01218661<\/span><\/span><\/strong><\/pre>\n<p> <span style=\"color: #000000;\"><span style=\"color: #000000;\">Desta vez n\u00e3o recebemos nenhum erro porque cada coluna do quadro de dados \u00e9 num\u00e9rica.<\/span><\/span><\/p>\n<h2> <span style=\"color: #000000;\"><strong>M\u00e9todo 2: remover colunas n\u00e3o num\u00e9ricas do quadro de dados<\/strong><\/span><\/h2>\n<p> <span style=\"color: #000000;\"><span style=\"color: #000000;\">Outra maneira de evitar o erro \u00e9 simplesmente remover todas as colunas n\u00e3o num\u00e9ricas do quadro de dados antes de usar a<\/span> fun\u00e7\u00e3o <strong style=\"color: #000000;\">prcomp()<\/strong> <span style=\"color: #000000;\">:<\/span><\/span><\/p>\n<pre style=\"background-color: #ececec; font-size: 15px;\"> <strong><span style=\"color: #008080;\"><span style=\"color: #000000;\"><span style=\"color: #008080;\">#remove non-numeric columns from data frame\n<\/span>df_new &lt;- df[ , unlist(lapply(df, is. <span style=\"color: #3366ff;\">numeric<\/span> ))]\n\n<span style=\"color: #008080;\">#view new data frame\n<\/span>df_new\n\n  rebound points\n1 12 10\n2 8 4\n3 26 5\n4 25 5\n5 38 4\n6 30 3\n7 24 8\n8 24 18\n9 15 22\n\n<span style=\"color: #008080;\">#calculate main components\n<\/span>prcomp(df_new)\n\nStandard deviations (1, .., p=2):\n[1] 9.802541 6.093638\n\nRotation (nxk) = (2 x 2):\n                PC1 PC2\npoints 0.9199431 0.3920519\nrebounds -0.3920519 0.9199431\n<\/span><\/span><\/strong><\/pre>\n<p> <span style=\"color: #000000;\">Novamente, n\u00e3o recebemos nenhum erro porque cada coluna do quadro de dados \u00e9 num\u00e9rica.<\/span><\/p>\n<p> <span style=\"color: #000000;\"><strong>Nota<\/strong> : Na maioria dos casos, o primeiro m\u00e9todo \u00e9 a solu\u00e7\u00e3o preferida porque utiliza todos os dados em vez de remover determinadas colunas.<\/span><\/p>\n<h2> <span style=\"color: #000000;\"><strong>Recursos adicionais<\/strong><\/span><\/h2>\n<p> <span style=\"color: #000000;\">Os tutoriais a seguir explicam como corrigir outros erros comuns no R:<\/span><\/p>\n<p> <a href=\"https:\/\/statorials.org\/pt\/r-argumentos-implicam-um-numero-diferente-de-linhas\/\" target=\"_blank\" rel=\"noopener\">Como consertar em R: argumentos envolvem diferentes n\u00fameros de linhas<\/a><br \/> <a href=\"https:\/\/statorials.org\/pt\/erro-dplyr-em-selecionar-argumentos-nao-utilizados\/\" target=\"_blank\" rel=\"noopener\">Como corrigir em R: erro na sele\u00e7\u00e3o de argumentos n\u00e3o utilizados<\/a><br \/> <a href=\"https:\/\/statorials.org\/pt\/r-substituicao-no-comprimento-zero\/\" target=\"_blank\" rel=\"noopener\">Como reparar em R: a substitui\u00e7\u00e3o tem comprimento zero<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Uma mensagem de erro que voc\u00ea pode encontrar ao usar R \u00e9: Error in colMeans(x, na.rm = TRUE): &#8216;x&#8217; must be numeric Este erro normalmente ocorre quando voc\u00ea tenta usar a fun\u00e7\u00e3o prcomp() para realizar a an\u00e1lise de componentes principais em R , quando uma ou mais colunas no quadro de dados que voc\u00ea est\u00e1 [&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-3962","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>Como corrigir: erro em colMeans(x, na.rm = TRUE): &#039;x&#039; deve ser num\u00e9rico - Estatologia<\/title>\n<meta name=\"description\" content=\"Este tutorial explica como corrigir o seguinte erro em R: Error in colMeans(x, na.rm = TRUE): &#039;x&#039; must be num\u00e9rico.\" \/>\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\/erro-r-colmeans-x-deve-ser-numerico\/\" \/>\n<meta property=\"og:locale\" content=\"pt_PT\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Como corrigir: erro em colMeans(x, na.rm = TRUE): &#039;x&#039; deve ser num\u00e9rico - Estatologia\" \/>\n<meta property=\"og:description\" content=\"Este tutorial explica como corrigir o seguinte erro em R: Error in colMeans(x, na.rm = TRUE): &#039;x&#039; must be num\u00e9rico.\" \/>\n<meta property=\"og:url\" content=\"https:\/\/statorials.org\/pt\/erro-r-colmeans-x-deve-ser-numerico\/\" \/>\n<meta property=\"og:site_name\" content=\"Statorials\" \/>\n<meta property=\"article:published_time\" content=\"2023-07-14T12:04:48+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=\"2 minutos\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\/\/statorials.org\/pt\/erro-r-colmeans-x-deve-ser-numerico\/\",\"url\":\"https:\/\/statorials.org\/pt\/erro-r-colmeans-x-deve-ser-numerico\/\",\"name\":\"Como corrigir: erro em colMeans(x, na.rm = TRUE): &#39;x&#39; deve ser num\u00e9rico - Estatologia\",\"isPartOf\":{\"@id\":\"https:\/\/statorials.org\/pt\/#website\"},\"datePublished\":\"2023-07-14T12:04:48+00:00\",\"dateModified\":\"2023-07-14T12:04:48+00:00\",\"author\":{\"@id\":\"https:\/\/statorials.org\/pt\/#\/schema\/person\/e08f98e8db95e0aa9c310e1b27c9c666\"},\"description\":\"Este tutorial explica como corrigir o seguinte erro em R: Error in colMeans(x, na.rm = TRUE): &#39;x&#39; must be num\u00e9rico.\",\"breadcrumb\":{\"@id\":\"https:\/\/statorials.org\/pt\/erro-r-colmeans-x-deve-ser-numerico\/#breadcrumb\"},\"inLanguage\":\"pt-PT\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/statorials.org\/pt\/erro-r-colmeans-x-deve-ser-numerico\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/statorials.org\/pt\/erro-r-colmeans-x-deve-ser-numerico\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Lar\",\"item\":\"https:\/\/statorials.org\/pt\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Como corrigir: erro em colmeans(x, na.rm = true): &#39;x&#39; deve ser num\u00e9rico\"}]},{\"@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":"Como corrigir: erro em colMeans(x, na.rm = TRUE): &#39;x&#39; deve ser num\u00e9rico - Estatologia","description":"Este tutorial explica como corrigir o seguinte erro em R: Error in colMeans(x, na.rm = TRUE): &#39;x&#39; must be num\u00e9rico.","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\/erro-r-colmeans-x-deve-ser-numerico\/","og_locale":"pt_PT","og_type":"article","og_title":"Como corrigir: erro em colMeans(x, na.rm = TRUE): &#39;x&#39; deve ser num\u00e9rico - Estatologia","og_description":"Este tutorial explica como corrigir o seguinte erro em R: Error in colMeans(x, na.rm = TRUE): &#39;x&#39; must be num\u00e9rico.","og_url":"https:\/\/statorials.org\/pt\/erro-r-colmeans-x-deve-ser-numerico\/","og_site_name":"Statorials","article_published_time":"2023-07-14T12:04:48+00:00","author":"Dr. benjamim anderson","twitter_card":"summary_large_image","twitter_misc":{"Escrito por":"Dr. benjamim anderson","Tempo estimado de leitura":"2 minutos"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/statorials.org\/pt\/erro-r-colmeans-x-deve-ser-numerico\/","url":"https:\/\/statorials.org\/pt\/erro-r-colmeans-x-deve-ser-numerico\/","name":"Como corrigir: erro em colMeans(x, na.rm = TRUE): &#39;x&#39; deve ser num\u00e9rico - Estatologia","isPartOf":{"@id":"https:\/\/statorials.org\/pt\/#website"},"datePublished":"2023-07-14T12:04:48+00:00","dateModified":"2023-07-14T12:04:48+00:00","author":{"@id":"https:\/\/statorials.org\/pt\/#\/schema\/person\/e08f98e8db95e0aa9c310e1b27c9c666"},"description":"Este tutorial explica como corrigir o seguinte erro em R: Error in colMeans(x, na.rm = TRUE): &#39;x&#39; must be num\u00e9rico.","breadcrumb":{"@id":"https:\/\/statorials.org\/pt\/erro-r-colmeans-x-deve-ser-numerico\/#breadcrumb"},"inLanguage":"pt-PT","potentialAction":[{"@type":"ReadAction","target":["https:\/\/statorials.org\/pt\/erro-r-colmeans-x-deve-ser-numerico\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/statorials.org\/pt\/erro-r-colmeans-x-deve-ser-numerico\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Lar","item":"https:\/\/statorials.org\/pt\/"},{"@type":"ListItem","position":2,"name":"Como corrigir: erro em colmeans(x, na.rm = true): &#39;x&#39; deve ser num\u00e9rico"}]},{"@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\/3962","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=3962"}],"version-history":[{"count":0,"href":"https:\/\/statorials.org\/pt\/wp-json\/wp\/v2\/posts\/3962\/revisions"}],"wp:attachment":[{"href":"https:\/\/statorials.org\/pt\/wp-json\/wp\/v2\/media?parent=3962"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/statorials.org\/pt\/wp-json\/wp\/v2\/categories?post=3962"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/statorials.org\/pt\/wp-json\/wp\/v2\/tags?post=3962"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}