Ana, uma dica importante para a lista: siga a recomendacao de prover um exemplo reproduzivel (o seu nao e' e com isso vc acaba ficando sem resposta de diversos usuarios da lista). Aqui segue um exemplo:
https://gist.github.com/benilton/1088208 Sobre o primeiro erro ("Error: unexpected symbol in "desvio padrão""), nunca use nome de variaveis que contenham espaco em branco ou acentuacao. Use algo como: desvioPadrao = sd(nome_da_variavel) Sobre o segundo erro ("Error in quantile(as.numeric(x), c(0.25, 0.75), na.rm = na.rm, names = FALSE, :(list) object cannot be coerced to type 'double' "): preste atencao no seu comando (quantile(dados[,-1], etc))... "dados" e' um data.frame (uma extensao de uma lista) e o R nao sabe como aplicar o quantile() neste objeto. Voce precisa fazer uma coluna por vez: apply(dados[,-1], 2, quantile, na.rm=TRUE) Att, benilton Em 13 de março de 2013 12:35, <[email protected]> escreveu: > Boa tarde, alguem me pode ajudar a corrigir estes erros? > DADOS: > Clínicas X2008 X2009 X2010 X2011 X2012 > 1 PBarca 82 87 87 87 87 > 2 Braga 84 85 86 89 87 > 3 Fafe 85 87 88 86 94 > 4 Maia 81 86 84 90 95 > 5 VNGaia 88 93 92 93 95 > 6 SMFeira 77 83 81 84 92 > > > # Estatística por ano > porano<-apply(dados[,-1],2,function(x)c(summary(x),0)[1:7]) > desvio padrão<-sd(dados[,-1], na.rm= TRUE) > Error: unexpected symbol in "desvio padrão" > variância<-diag(var(dados[,-1], na.rm= TRUE)) > quantile(dados[,-1], probs = c(0.25, 0.75, NA)/100) > ampinterquartil<-Iqr(matrix(as.numeric(dados[,-1], na.rm= TRUE))) > Error in quantile(as.numeric(x), c(0.25, 0.75), na.rm = na.rm, names = > FALSE, : > (list) object cannot be coerced to type 'double' > amplitude<-apply(dados[,-1],2,range, na.rm= TRUE) > amplitudediff<-c(amplitude[2,] - amplitude[1,]) > rownames(porano) <- c('Minimo','Primeiro > quartil','Mediana','Média','Terceiro Quartil','Máximo','NAs') > poranol<-rbind(porano,desvio > padrão,variância,amplitude,amplitudediff,ampinterquartil) >> >> colnames(porano) = 2008:2012 >> poranol > > X2008 X2009 X2010 X2011 X2012 > Minimo 66.000000 65.000000 62.000000 59.000000 60.000000 > Primeiro quartil 76.000000 84.000000 86.000000 88.250000 91.000000 > Mediana 80.000000 87.000000 89.500000 91.500000 94.000000 > Média 80.270000 86.290000 88.500000 90.500000 91.840000 > Terceiro Quartil 85.000000 89.500000 92.000000 95.000000 96.000000 > Máximo 94.000000 98.000000 98.000000 98.000000 99.000000 > NAs 4.000000 3.000000 3.000000 3.000000 0.000000 > desviopadrão 7.362374 6.254838 6.542402 7.439656 7.879345 > variância 54.204545 25.746212 21.530303 25.130682 12.780303 > 66.000000 65.000000 62.000000 59.000000 60.000000 > 94.000000 98.000000 98.000000 98.000000 99.000000 > amplitudediff 28.000000 33.000000 36.000000 39.000000 39.000000 >> >> porano > > 2008 2009 2010 2011 2012 > Minimo 66.00 65.00 62.0 59.00 60.00 > Primeiro quartil 76.00 84.00 86.0 88.25 91.00 > Mediana 80.00 87.00 89.5 91.50 94.00 > Média 80.27 86.29 88.5 90.50 91.84 > Terceiro Quartil 85.00 89.50 92.0 95.00 96.00 > Máximo 94.00 98.00 98.0 98.00 99.00 > NAs 4.00 3.00 3.0 3.00 0.00 >> >> > eu preciso de ter o terceiro quartil menos o primeiro quartil > e de ter mínimo menos 1,5 vezes terceiro quartil menos o primeiro quartil > e o máximo mais 1,5 vezes o terceiro quartil menos o primeiro quartil > ou seja obter a amplitude interquartil e os outliers. > alguem tem algum exemplo? > e que no grafico me apareça mínimo 1ºquartil mediana media 3ºquartil máximo > e as dois tipos de amplitude. > > boxplot(dados[,-1], axes=FALSE) # O parametro axes=FALSE faz com que os > eixos não sejam desenhados > title(main= 'indicador eKtv sup 1_2 anual') # Acrescenta o título do gráfico > title(xlab= 'Ano') # Acrescenta o titulo do eixo X > title(ylab= 'Percentual') # Acrescenta o titulo do eixo Y > box() # Desenha a caixa em torno do gráfico > axis(2) # Coloca o eixo Y (o 2 ali representa o eixo Y) no gráfico > axis(1, 1:5, 2008:2012) # Coloca no eixo X (representado pelo 1), nos pontos > 1 a 5, as etiquetas 2008 a 2012. > > > obrigada > Ana Rocha > _______________________________________________ > R-br mailing list > [email protected] > https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br > Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forneça código > mínimo reproduzível. _______________________________________________ R-br mailing list [email protected] https://listas.inf.ufpr.br/cgi-bin/mailman/listinfo/r-br Leia o guia de postagem (http://www.leg.ufpr.br/r-br-guia) e forneça código mínimo reproduzível.
