Programa R para Biologia da Conservação
Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.

plotmédias.R - erros

3 participantes

Ir para baixo

plotmédias.R - erros Empty plotmédias.R - erros

Mensagem por Albert Aguiar Seg Jun 08, 2020 12:17 pm

Olá,

Enquanto corro atrás da agenda dos módulos encontrei no módulo 2, erros com a função "plotmédias.R" e não consegui resolver, ainda.

Estou na turma "Programa R para Biologia da Conservação 7.0, da qual o script da função tem sua origem.
Tanto no MAC, quanto no WIN ao baixar o arquivo, o encoding dele trouxe-o nomeado como: "plotmÇdias", então renomeei o arquivo.

Contudo,

Recebo o mesmo erro no WIN e no MAC (meu sistema nativo) ao executar a função:

Error in xy.coords(x, y, xlabel, ylabel, log) :
 'x' and 'y' lengths differ

Usando o "Rerun with Debug" no RStudio tenho o seguinte resultado:


Error in xy.coords(x, y, xlabel, ylabel, log) :
 'x' and 'y' lengths differ
5.
stop("'x' and 'y' lengths differ")
4.
xy.coords(x, y, xlabel, ylabel, log)
3.
plot.default(x, médias, ylim = range(c(médias - desvios, médias +
   desvios)), pch = 16, axes = F, xlab = nome.x, ylab = nome.y)
2.
plot(x, médias, ylim = range(c(médias - desvios, médias +
   desvios)), pch = 16, axes = F, xlab = nome.x, ylab = nome.y) at plotmédias.R#6
1.
plotmédias(dados$Area, dados$Riqueza, "Áreas", "Riqueza")

Com toda a experiência de um iniciante no módulo 2 não consegui resolver, mesmo procurando pelos erros no Sir. Google. Alguma ideia?
Obrigado!
Albert Aguiar
Albert Aguiar

Mensagens : 2
Data de inscrição : 01/04/2020
Idade : 36
Localização : São Paulo, SP

http://www.savebrasil.org.br

Ir para o topo Ir para baixo

plotmédias.R - erros Empty Re: plotmédias.R - erros

Mensagem por Prof. Marcos Seg Jun 08, 2020 4:43 pm

Hum, vamos tentar descobrir, então!

O problema de encoding é meio chato mesmo... Eu passei a evitar completamente acentos e caracteres especiais recentemente, no final acho que é a melhor estratégia. Mas essa parte já está resolvida, então vamos lá.

Uma possibilidade é que o problema esteja nos dados. A mensagem 'x' and 'y' lengths differ sugere que as variáveis que você tentou utilizar tenham tamanhos (número de linhas, no caso) diferentes, fazendo com que os dados "não se encaixem".

Uma boa estratégia é voltar um passo atrás: usar dados de exemplo, e ver se funciona. Se funcionar, então podemos ficar seguros de que o problema está nos dados ou na forma como eles são inseridos na função - e não na função em si.

Então tente:

Código:
data(iris)
source("plotmédias.R")
plotmédias(iris$Species, iris$Sepal.Length, "Espécie", "Comprimento da Sépala")
Prof. Marcos
Prof. Marcos

Mensagens : 678
Data de inscrição : 23/12/2015
Idade : 42
Localização : Maceió, AL

https://cantinhodor.wordpress.com/

Ir para o topo Ir para baixo

plotmédias.R - erros Empty Re: plotmédias.R - erros

Mensagem por Albert Aguiar Ter Jun 09, 2020 9:47 pm

Obrigado pela resposta, Professor!

Fiz alguns testes da sua função com data(iris) e funcionou. Então fiz alguns testes com: "dados4.txt" do Módulo 2 e a função apresentou o mesmo erro, fazendo manual, contudo, funcionou.

medias<-tapply(dados$Riqueza, dados$Area, mean)
desvios<-tapply(dados$Riqueza, dados$Area, sd)

plot(1:3, medias, pch=16, ylim=range(c(medias-desvios, medias+desvios)))
arrows(1:3, medias-desvios, 1:3, medias+desvios, angle=90, code=3)
Albert Aguiar
Albert Aguiar

Mensagens : 2
Data de inscrição : 01/04/2020
Idade : 36
Localização : São Paulo, SP

http://www.savebrasil.org.br

Ir para o topo Ir para baixo

plotmédias.R - erros Empty Re: plotmédias.R - erros

Mensagem por Regina_ Qui Jun 11, 2020 11:31 am

Olá professor Marcos,

Aproveitando este tópico... No meu caso também apareceu da mesma forma do agaguiar e eu renomeei, e também segui os mesmos passos sugeridos acima, mas não resolveu.

Abaixo os passos que seguir e a respectiva mensagem de erro:

> source("plotmédias.R")
> data(iris)
> plotmédias(iris$Species, iris$Sepal.Length, "Espécie", "Comprimento da Sépala")

"Error in plotmédias(iris$Species, iris$Sepal.Length, "Espécie", "Comprimento da Sépala") :
não foi possível encontrar a função "plotmédias""
Regina_
Regina_

Mensagens : 2
Data de inscrição : 29/03/2020

Ir para o topo Ir para baixo

plotmédias.R - erros Empty Re: plotmédias.R - erros

Mensagem por Prof. Marcos Sex Jun 19, 2020 7:38 am

Oi, Regina!

No seu caso a mensagem de erro é mais específica, o R não localizou a função. Isto pode acontecer se o nome estiver errado: se você editou o arquivo e mudou a função para plotmedias, sem acento, deve chamar a função pelo novo nome.

Perceba que o nome do arquivo em si não é relevante, apenas o nome da função dentro dele, ok?
Prof. Marcos
Prof. Marcos

Mensagens : 678
Data de inscrição : 23/12/2015
Idade : 42
Localização : Maceió, AL

https://cantinhodor.wordpress.com/

Ir para o topo Ir para baixo

plotmédias.R - erros Empty Re: plotmédias.R - erros

Mensagem por Conteúdo patrocinado


Conteúdo patrocinado


Ir para o topo Ir para baixo

Ir para o topo

- Tópicos semelhantes

 
Permissões neste sub-fórum
Não podes responder a tópicos