[R-br] erros no codigo do R

alanarocha em sapo.pt alanarocha em sapo.pt
Quarta Março 13 12:35:34 BRT 2013


  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


Mais detalhes sobre a lista de discussão R-br