Beasley BioestatisticaUsandoR
Beasley BioestatisticaUsandoR
Beasley BioestatisticaUsandoR
Bragana 2004
1
O QUE R?1 Introduo a R R uma linguagem e ambiente para computao estatstica e grficos. um projeto GNU que similar linguagem e ambiente S que foi desenvolvida no Bell Laboratories (anteriormente AT&T, agora Lucent Technologies) por John Chambers e colegas. R pode ser considerada como uma implementao diferente da S. H algumas diferenas importantes, mas muito cdigo para S funciona inalterado em R. R fornece uma ampla variedade de tcnicas estatsticas (modelagem linear e no linear, testes estatsticos clssicos, anlise de sries temporais, classificao, agrupamento, ...) e grficos, e altamente extensvel. A linguagem S muitas vezes o veculo de escolha para pesquisa em metodologia estatstica, e R fornece uma rota Open Source para participao naquela atividade. Um dos pontos fortes de R a facilidade com que grficos bem-desenhados com qualidade para publicao podem ser produzidos, incluindo smbolos matemticos e frmulas quando necessrio. Muitos cuidados tm sido feitos sobre as definies padro para as menores escolhas em desenho, entretanto o usurio retm controle total. R disponvel como Software Livre sob os termos da Licena Pblica Geral GNU da Free Software Foundation na forma de cdigo fonte. Ela compila e funciona em uma grande variedade de plataformas UNIX e sistemas similares (incluindo FreeBSD e Linux). Ele compila e funciona em Windows 9x/NT/2000 e MacOS. O ambiente R R um conjunto integrado de facilidades de software para manipulao de dados, clculo e visualizao grfica. Ele inclui * uma facilidade efetiva para manipulao e armazenagem de dados, * um conjunto de operadores para clculos sobre quadros de dados, em particular as matrizes, * uma grande e coerente coleo integrada de ferramentas intermedirias para anlise de dados, * facilidades grficas para anlise de dados e visualizao na tela ou impressa, * uma linguagem de programao bem desenvolvida, simples e efetiva que inclui condicionais, alas, funes recursivas definidas pelo usurio, e facilidades para entrada e sada. O termo ambiente pretende caracterizar R como um sistema totalmente planejado e coerente, em vez de uma aglomerao de ferramentas muito especficas e inflexveis, como o caso com outros softwares de anlise de dados. R, bem como S, desenhada ao redor de uma verdadeira linguagem de computador, e permite aos usurios acrescentar funcionalidade adicional por definio de novas funes. Muito do sistema escrita 1 Traduo da pgina What is R? (O que R) no site do Projeto R: http://www.r-project.org/about.html
no dialeto R da S, que faz com que seja fcil para usurios seguir as escolhas algortimicas feitas. Para tarefas computacionalmente-intensivas, C, C++ e cdigo Fortran podem ser ligados e chamados na hora de calcular. Usurios avanados podem escrever cdigo C para manipular objetos R diretamente. Muitos usurios pensam em R como um sistema estatstico. Ns preferimos pensar nele como um ambiente dentro do qual tcnicas estatsticas so implementadas. R pode ser estendido (facilmente) atravs de pacotes. H cerca de oito pacotes fornecidos com a distribuio R e muitos outros so disponveis atravs da famlia CRAN de stios na Internet cobrindo uma ampla variedade de estatsticas modernas. R tem seu prprio formato de documentao, parecido com LaTex, que usado para fornecer documentao compreensiva, tanto on-line e em uma variedade de formatos, como impressa. --Fim da traduo-CONSIDERAES GERAIS O R (Ihaka & Gentleman, 1996) uma linguagem e ambiente estatstico que traz muitas vantagens para o usurio, embora que estas nem sempre sejam bvias no incio. Primeiro, um Software Livre (livre no sentido de liberdade) distribudo sob a Licena Pblica Geral (http://www.fsf.org/pt_home.html) e pode ser livremente copiado e distribudo entre usurios, bem como pode ser instalado em diversos computadores livremente. Isso contraste com pacotes comerciais que tm licenas altamente restritivas e no permitem que sejam feitas cpias ou que seja instalado em mais de um computador sem a devida licena (e pagamento, claro!). Segundo, a grande maioria de Softwares Livres so grtis e R no uma exceo. Isso contrasta com os pacotes comerciais. Terceiro, sendo um Software Livre, os cdigos fontes do R esto disponveis e atualmente so gerenciados por um grupo chamado o Core Development Team (http://r-project.org/contributors). A vantagem de ter o cdigo aberto que falhas podem ser detectadas e corrigidas rapidamente e atualizaes para Softwares Livres podem ser disponibilizadas em uma questo de dias. Essa sistema de reviso depende pesadamente da participao dos usurios. Em contraste, em muitos pacotes comerciais, as falhas no so corrigidas at o prximo lanamento que pode levar vrios anos. Quarta, R fornece um interface de entrada por linha de comando (ELC). Todos os comandos so digitados e o mouse pouco usado. Pode parecer antigo ou at pobre em recursos visuais, mas a h o melhor recurso do R, a sua flexibilidade. Para usurios, a linguagem da R se torna clara e simples e a flexibilidade da ELC permite que uns poucos comandos simples sejam juntados para criar funes poderosas. Alm disso a transparncia das funes e a entrada de dados altamente didtica. O usurio sempre consciente do que foi pedido atravs da ELC. Isso contraste com outros pacotes em que uma interface bonita e sofisticada pode esconder a dinmica dos clculos, e potencialmente pode esconder erros. Finalmente, R disponvel para muitas plataformas incluindo Unix, Linux, Macintosh e Windows. Embora seja possvel baixar e compilar os cdigos fontes para instalar R no seu sistema, a maioria de usurios optam para a via mais fcil de instalar R atravs de arquivos binrios ou executveis. Esta apostila no um manual completo para R e no uma substituio para os arquivos de ajuda. O R conta com um enorme acervo de arquivos de ajuda que so disponveis no programa e na Internet na forma de arquivos html ou pdf, alm de outros formatos. Na seo Documentation na pgina do Projeto R
(http://www.r-project.org) h manuais e questes freqentemente perguntadas (FAQ's) e estes esto tambm disponveis localmente quando R instalado. H tambm um boletim, pginas de ajuda, e listas de publicaes em revistas cientficas. As listas de e-mail so fontes extremamente teis de informaes sobre como executar tarefas em R, alm de dicas teis de como resolver problemas em que no h ajuda documentada. Veja a Lista de Recursos de Ajuda na pagina 3 para iniciar aprendizagem do R. Referncia feita aos exemplos tirados do livro de Fowler & Cohen (1990). OS OBJETIVOS DESTA APOSTILA Esta apostila foi originalmente escrita para alunos da disciplina de Biometria do curso de Cincias Biolgicos do Campus de Bragana, Universidade Federal do Par, Brasil. Depois achei que tambm poderia ser til para alunos de biologia (e de outros cursos) em outras instituies de ensino superior no Brasil. Assim, gostaria contar com o apoio dos leitores quanto s sugestes, crticas e melhorias no texto. Fornecer exemplos do uso do R no contexto de biologia porque, em geral, h carncia de exemplos biolgicos na documentao atual do R. Estimular a aprendizagem da estatstica dando exemplos claros e simples da funcionalidade e flexibilidade do R. Estimular os alunos aproveitarem do Software Livre e portanto evitando as restries de softwares comerciais e o uso no autorizado destes. LISTA DE RECURSOS DE AJUDA Das pginas do Projeto R na Internet http://r-project.org. http://cran.br.r-project.org http://r-project.org/mail http://cran.r-project.org/other-docs.html O home page do projeto R O servidor mirror (espelho) brasileiro (UFPr) r-help a lista mais apropriado para usurios documentos de ajuda e tutoriais em vrios formatos
Nesta ltima pgina particularmente recomendado o documento R for Beginners (Ingls) da autoria de Emanuel Paradis, ou R para Principiantes (a traduo da R for Beginners para o Espanhol feita por Jorge A. Ahumadal). Outras pginas na Internet sobre R http://www.agr.kuleuven.ac.be/vakken/StatisticsByR/index.htm http://www.math.csi.cuny.edu/Statistics/R/simpleR/index.html http://www.est.ufpr.br/Rtutorial/contents.html Introduo anlise de dados usando R Introduo usando o pacote Simple em R Tutorial sobre R em Portugus
Algumas pginas chaves sobre Software Livre (SL) http://www.fsf.org/home_pt.html http://www.softwarelivre.rs.gov.br http://www.softwarelivre.unicamp.br/sl Free Software Foundation (GNU) Site sobre SL do Governo do RS Site sobre SL da UNICAMP, SP
Dalgaard P (2002) Introductory Statistics with R. Springer, New York, ISBN 0-387-95475-9. Fox J (2002) An R and S-PLUS Companion to Applied Regression. Sage Publications, ISBN 0-76192280-6 (softcover) ou 0-761-92279-2 (hardcover) Comandos de ajuda do R
> help.start() inicia documentao na forma de arquivos html visualizados no seu browser > help (tpico) inicia uma janela de ajuda sobre tpico > ?(tpico) a mesma coisa
DICAS GERAIS ANTES DE COMEAR Sempre iniciar no seu diretrio de trabalho (p. ex. meuprojeto) Em Windows: File=> Change dir e seleciona C:\meunome\meuprojeto ou alternativamente, usa
> setwd(/home/meunome/meuprojeto)
Texto pode ser digitado aps o prompt de comando > Funes em R sempre so acompanhados com parnteses () H uma distino entre minsculas e MAISCULAS. Voc pode ver o histrico de comandos colocados por voc durante a sua sesso pressionando a tecla da seta para cima (). Isso muito til para verificar novamente os comandos anteriores ou reedit-los. Pode copiar e colar na linha de comando: primeiro seleciona o texto a ser copiado e, em Windows clique com o boto direito do mouse, selecione Copy e clique novamente no boto direta e selecione Paste. Alternativamente use Crtl+C e Ctrl+V. Para copiar e colar em Linux, clique sobre o texto selecionado com o boto esquerdo do mouse com a tecla Ctrl pressionada (ou Ctrl+C). Para colar, clique com o boto do meio (ou os dois no mesmo tempo, se no tiver um mouse com trs botes). Voc pode designar nomes a objetos R usando a combinao <-
> x<-c(12,24,14)
Lembre que R usa um ponto . em vez de vrgula , quando h nmeros com casas decimais. Se precisar importar dados que usam vrgulas em vez de pontos, troque na planilha as vrgulas por pontos usando Localizar e Substituir, se no, os dados no sero reconhecidos como nmeros. Isso no a mesma coisa que dados separados por vrgulas. Por exemplo, o jogo de dados a seguir tem casas decimais definidos usando pontos, mas os valores em cada categoria so separados por vrgulas. A, B, C 2.6, 3.8, 7.6 Neste documento, comandos a serem digitados na linha de comando sero assinalados com o prefixo > (o prompt do R) e esto na fonte Courier
Para estas sesses, no necessrio e pode responder n para no salvar a imagem do espao de trabalho. ARQUIVOS ACOMPANHANDO ESTE APOSTILA Dados larvas.csv massa.csv starling.csv plasma.csv dadosmv.csv o comprimento de larvas de bivalves (Beasley, dados no publicados) a massa de pssaros em quatro locais (Fowler & Cohen, 1990) a massa de pssaros por local e ms (Fowler & Cohen, 1990) o efeito de tratamento e sexo sobre nveis de plasma (Zar, 1999) associaes de macrofauna no esturio do Caet, Par (Beasley, dados no publicados)
AGRADECIMENTOS Gostaria agradecer Profa. Dra. Claudia Helena Tagliaro da Universidade Federal do Par (UFPA) para leitura crtica do documento. Obrigado tambm ao Dr. Ulf Mehlig do Centre for Marine Ecology (ZMT), Universidade de Bremen, para leitura crtica, melhorias no cdigo para plotar a mdia e o desvio padro, e permisso para usar material no-publicado na seo clculos simples.
> 2,3*2 Error: syntax error > sib(5) Error: couldn't find function "sib"
Lembrando resultados: podemos designar um nome ao resultado do clculo
> 47/11-> resultado > resultado [1] 4.272727 > resultado*11 [1] 47 > resultado+42->resultado > resultado [1] 46.27273 7
> x<-17 > x [1] 17 > for (i in 1:5) {x+2->x} > x [1] 27
Para ir de x=17 e chegar a x=27, o nmero 2 foi somado cinco vezes ao valor de x que foi armazenado cada vez como x. O clculo a mo seria: 17+2=19, 19+2=21, 21+2=23, 23+2=25, 25+2=27 A seqncia de nmeros 1 a 5 pode ser obtida usando
9 10
> x<-c(1, 2, 17, 42, 4.5) > x [1] 1.0 2.0 17.0 42.0 4.5 > x*0.3 [1] 0.3 0.6 5.10 12.60 1.35
Podemos extrair informaes sobre elementos especficos de um jogo de dados. Por exemplo, a extrao do terceiro elemento de uma seqncia
10
EXPLORAO PRELIMINAR DOS DADOS Estatstica descritiva, boxplots, grficos de barra e histogramas. A teoria e os clculos detalhados de procedimentos nesta seo podem ser encontrados nos Captulos 3, 4 e 5 de Vieira (1980), 4 e 5 de Levin (1985), 3 a 6 de Fowler & Cohen (1990) e 3 e 4 de Zar (1999). Importar os dados no arquivo de valores separados por virgulas, larvas.csv
> x<-read.csv("larvas.csv")
Renomear as colunas com ttulos com acentos e depois mostrar o novo jogo de dados x
> summary(x)
Tocantins Min. : 232.0 1st Qu.:255.0 Median :255.0 Mean : Max. : 251.2 255.0 3rd Qu.:255.0 Melgao Min. : 218.0 1st Qu.:255.0 Median :278.0 Mean : Max. : 265.8 289.0 3rd Qu.:278.0 Ourm Min. : 232.0 1st Qu.:255.0 Median :255.0 Mean : Max. : 251.2 255.0 3rd Qu.:255.0 Irituia Min. : 232.0 1st Qu.:255.0 Median :255.0 Mean : Max. : 251.2 255.0 3rd Qu.:255.0 Guam Min. : 218.0 1st Qu.:218.0 Median :232.0 Mean : Max. : 229.3 255.0 3rd Qu.:232.0
Podemos representar as estatsticas em uma forma grfica, o boxplot, mas primeiro vamos importar um novo jogo de dados: massa.csv e mostrar as estatsticas (no mostrados aqui)
11
Mostrar todas as observaes cruas da amostra A na forma de grfico barplot. Anote y$A significa a coluna A de observaes no arranjo de dados y - Figura 3
> hist(y$A, col=2, main="Histograma de amostra A", xlab="Classe de massa (g)", ylab="Freqncia")
Podemos variar o nmero de intervalos com breaks e os limites do eixo x com xlim. Reparou as diferenas entre os dois histogramas? Lembre, so os mesmos dados - Figura 5
> hist(y$A, breaks=2, xlim=(range(70,100)), col=2, main="Histograma de amostra A", xlab="Classe de massa (g)", ylab="Freqncia")
Algumas estatsticas teis: Desvio padro (s) da amostra A
> sim.dados<-round(rnorm(n=100,mean=74,sd=2.34));sim.dados 12
Os dados no so mostrados aqui. Lembra que os valores (e as suas estatsticas!) sero ligeiramente diferentes devido a maneira aleatria de gerar as observaes. Calcule o erro padro e nomeie esta como o objeto R errpad
> errpad<-sd(sim.dados)/sqrt(length(sim.dados))
Calcule o Intervalo de Confiana 95 %. A amostra grande (n>30) ento basta multiplicar o erro padro pelo valor crtico de z para a probabilidade p=0,05
> errpad<-sd(y$A)/sqrt(length(y$A))
Obter o valor crtico de t com 9 graus de liberdade. O valor de 2,262 representa o valor crtico da cauda superior com P=0,025. Olhe para um grfico da curva normal para ver a distribuio da probabilidade em duas caudas.
13
Figura 1. Boxplot dos dados sobre massa (g) de pssaros em quatro locais (A-D).
14
Figura 5. Histograma dos dados de amostra A, mas com classes maiores e um aumento na largura do eixo-x.
Plote a mdia desvio padro (s) de uma srie de amostras (comprimento, em m, de larvas de bivalves de gua doce, chamadas gloqudios, dos rios Tocantins, Melgao, Ourm, Guam, e Irituia) no arquivo larvas.csv no diretrio de trabalho. Importe os dados.
> z<-read.csv(larvas.csv)
Renomeie as colunas (por algum motivo, a importao no traz os acentos e as vrgulas)
> names(z)<-c(Tocantins, Melgao, Ourm, Irituia, Guam) > z Tocantins Melgao Ourm Irituia Guam 1 232 218 232 232 218 2 232 218 232 232 218 3 232 218 232 232 218 . . . . . . . . . . . . . . . . . . 30 255 289 255 255 255
Deve apresentar os dados mais ou menos assim. O jogo inteiro de dados no mostrado aqui por razes de clareza e espao. Infelizmente no h uma funo direta para plotar a mdia desvio padro e talvez a maior razo para isso seja porque no so consideradas estimativas robustas, em contraste com a mediana os quartis
15
Inicie uma ligao com o jogo de dados z para permitir acesso fcil aos dados.
> attach(z)
NOTA IMPORTANTE: Sempre use detach
se as colunas dos dois jogos tenham nomes idnticas, se no haver problemas! Plote as mdias primeiro com os eixos devidamente etiquetados. Criamos um objeto do grfico chamado centros que lembra a posio do centro das barras de cada rio. O tamanho das etiquetas dos eixos reduzida pelo cex.names enquanto o ylim controla o valor mnimo e mximo do eixo-y.
Figura 6. Mdia ( desvio padro) dos dados (larvas.csv) sobre comprimento de larvas de bivalves de gua doce em cinco diferentes rios amaznicos.
16
TRANSFORMAO DE OBSERVAOES Excelentes discusses sobre transformaes de dados podem ser encontrados em Captulo 13 de Zar (1999) e 10 de Fowler & Cohen (1990). No R, log() o logaritimo natural (ln) enquanto log10() o logaritmo base de 10. Na verdade, logb() o logaritmo base do nmero b. Crie uma amostra chamada meusdados e verifique os dados em seguida
Calcule a mdia e a varincia da amostra. A varincia da amostra muito maior que a mdia, ento a transformao log (x+1) apropriada. Lembre a razo que log (x+1) e no apenas log (x)?
> logmeusdados<-log10(meusdados+1); logmeusdados [1] 1.1139434 1.3010300 0.0000000 1.2041200 2.1643529 0.0000000 1.5185139 [8] 0.7781513 1.2552725
Calcule a mdia e a varincia da amostra transformada. O que aconteceu com a razo entre a mdia e a varincia? Experimente outras funes como a raiz quadrada: sqrt()
17
Uma transformao simples a de BoxCox que transforma a observao x para x. Cada observao elevada ao poder de lambda (). Cria um jogo de dados de arranjos em trs locais (fator Localidade) com trs rplicas em cada local.
> library(MASS)
Rodar a transformao boxcox. Acrescentamos um pequeno valor 0.01 para evitar valores negativos
> boxcox(Dados+0.01~Localidade,data=bcx)
Aparecer um grfico mostrando a curva e o valor de lambda o ponto onde a linha pontilhada do pico da curva intercepta o eixo-x. Podemos ler o valor de lambda usando o mouse. Iniciar propriedade de localizao de pontos do mouse
> locator()
Coloque o cursor + no ponto da intercepo da linha pontilhada do pico da curva com o eixo-x. Clique uma vez com o boto esquerda. Depois clique uma vez com o boto do meio (se no tiver um mouse com trs botes, clique em ambas botes no mesmo tempo). Aparecer os coordinados do ponto na linha de comando. O valor x o valor de lambda.
ANLISE DE FREQNCIAS (QUI-QUADRADO) Mais exemplos podem ser obtidos nos Captulos 11 de Vieira (1980), 10 de Levin (1985), 13 de Fowler & Cohen (1990) e 22 e 23 de Zar (1999). Freqncias observadas dos 10 integers 0 a 9 obtidos em uma amostra gerada aleatoriamente (n=100) pelo computador:
> chisq.test(obs) Chi-squared test for given probabilities data: obs X-squared = 5.2, df = 9, p-value = 0.8165
O valor de probabilidade indica que as freqncias observadas no diferem das freqncias esperadas, ou seja as observaes so verdadeiramente aleatrias. Verifique as freqncias esperadas
D. amphibia 10
D. attica 9
> barplot(moscas,xlab="Espcie",ylab="Freqncia",cex.names=0.7)
As freqncias observadas so significativamente diferentes da homogeneidade? (lembra como se calcula a fesperada=18.75?)
19
>chisq.test(moscas) Chi-squared test for given probabilities data: moscas X-squared = 19.9867, df = 3, p-value = 0.0001708
As freqncias das quatro espcies so diferentes de uma distribuio homognea. UM GRAU DE LIBERDADE Quando h apenas duas categorias, h um grau de liberdade e a correo de Yates usada. Podemos testar a hiptese nula que a razo entre macho : fmea no diferente de 1 : 1. Uma amostra de 16 larvas coletadas e criadas at adulto contm 12 machos e 4 fmeas (Fowler & Cohen, 1990). Esta razo significativamente diferente de 1 : 1? Coloque as freqncias observadas numa matriz com duas colunas
> prop.test (x, correct=TRUE) 1-sample proportions test with continuity correction data: x, null probability 0.5 X-squared = 3.0625, df = 1, p-value = 0.08012 alternative hypothesis: true p is not equal to 0.5 95 percent confidence interval: 0.4740838 0.9166722 sample estimates: p 0.75
O valor de qui-quadrado 3,0625 menor que o valor crtico com v=1, portanto aceitamos a hiptese nula. Importante: os indivduos de cada sexo devem ser dispersos em uma maneira independente.
20
TESTE PARA CONCORDNCIA ENTRE DADOS OBSERVADOS E UM MODELO MATEMTICO Dados de contagem sobre o nmero de nematdeos vistos em uma amostra de 60 observaes em uma cmera de contagem sob o microscpio. A probabilidade (P) para cada valor de x foi calculada usando a distribuio de probabilidade de Poisson, estimando o parmetro lambda () a partir da amostra. No. nematdeos (x): Freqs. Observadas (n=60): P (Poisson): Freqs esperadas (P x n): 0 3 4.458 1 12 11.58 2 17 0.251 15.06 3 13 0.218 13.08 4 9 0.141 8.46 5 3 0.074 4.44 6 ou mais 3 0.0478 2.87
0.0743 0.193
> Obs<-c(3,12,17,13,9,3,3) > Ppoisson<-c(0.0743, 0.193, 0.251, 0.218, 0.141, 0.074, 0.0478)
Usamos a lista de probabilidades (Ppoisson) gerada pelo modelo Poisson para esta amostra de dados de contagem para calcular as freqncias esperadas. Indicamos isso no teste pelo componente p=Ppoisson.
> chisq.test(Obs,p=Ppoisson) Chi-squared test for given probabilities data: Obs X-squared = 1.25, df = 6, p-value = 0.9743 Warning message: Chi-squared approximation may be incorrect in: chisq.test(Obs, p = Ppoisson)
Sabemos que devemos retirar mais um grau de liberdade quando usamos o modelo Poisson devido a estimativa do parmetro lambda (). Portanto, o nmero de graus de liberdade v=(7-2)=5. Consultando a tabela de qui-quadrado com v=5, vemos que o resultado permanece no significativo, ou seja, no h uma diferena entre as freqncias observadas e esperadas. O modelo Poisson descreve adequadamente a disperso (aleatria, claro!) dos nematdeos na cmera de contagem. Verifique as freqncias esperadas s para confirmar!
4.440
2.868
21
ANLISE DE FREQNCIAS USANDO TABELAS DE CONTINGNCIA Em duas amostras tiradas de solos diferentes foram encontradas duas espcies de tatuzinho:
Armadilidium 6 46
Coloque os dados numa matriz e verifique a matriz x. Pode separar comandos na mesma linha com ;
> chisq.test(x, correct=TRUE) Pearson's Chi-squared test with Yates' continuity correction data: x X-squared = 7.5706, df = 1, p-value = 0.005933
H uma associao significativa entre as variveis, podemos inferir que Oniscus associada com solo calcreo e Armadilidium com solo argiloso. Pode at plotar os dados! - Figura 8
22
> chisq.test(eutrof) Pearson's Chi-squared test data: eutrof X-squared = 30.9545, df = 6, p-value = 2.586e-05
O resultado mostra que h uma associao significativa entre as espcies e o nvel de eutrofizao. Verifique os valores esperados
> chisq.test(eutrof) $expected [,1] [,2] [,3] [1,] 15.92994 6.528662 8.878981 [2,] 19.81529 8.121019 11.044586 [3,] 25.25478 10.350318 14.076433
As freqncias podem ser plotadas - Figura 9
> barplot (eutrof, names=c(D. nebulosa, D. submaculata, D. dilatata, D. nubilipennis), col=c(4,7,3), cex.names=0.6, beside=TRUE) > legend (7,35, c(Oligotrfico, Mesotrfico, Eutrfico), fill=c(4,7,3))
23
Figura 8. Barplot mostrando as freqncias de duas espcies de tatuzinho em dois tipos de solo.
24
TESTE-t Mais detalhes sobre o o teste de F e o teste-t podem ser encontradas em Captulo 12 da Vieira (1980), 16 de Fowler & Cohen (1990) e 8 de Levin (1985). Captulo 9 de Zar (1999) apresenta uma boa discusso do uso do teste t. PARA AMOSTRAS INDEPENDENTES Exemplo do livro da Viera (1980) p.122-124 sobre a perda de peso (kg) em dois grupos de pacientes; cada paciente seguindo a dieta designada para seu grupo.
> shapiro.test(Dieta1) Shapiro-Wilk normality test data: Dieta1 W = 0.9615, p-value = 0.8029 > shapiro.test(Dieta2) Shapiro-Wilk normality test data: Dieta2 W = 0.926, p-value = 0.5178
Verifique homogeneidade das varincias usando o teste de F
> var.test(Dieta1,Dieta2) F test to compare two variances data: Dieta1 and Dieta2 F = 0.8, num df = 9, denom df = 6, p-value = 0.7325 alternative hypothesis: true ratio of variances is not equal to 1 95 percent confidence interval: 0.1448382 3.4557775 sample estimates: ratio of variances 0.8
Os dados so normais e as varincias no so significativamente diferentes. Podemos prosseguir com o
25
teste-t para as duas amostras independentes, mas com varincias iguais. A hiptese nula que no h uma diferena na perda de massa mdia e a alternativa que h uma diferena. O teste de duas caudas.
> t.test(Dieta1,Dieta2, var.equal=TRUE,alternative="two.sided") Two Sample t-test data: Dieta1 and Dieta2 t = -2.9021, df = 15, p-value = 0.01095 alternative hypothesis: true difference in means is not equal to 0 95 percent confidence interval: -5.2033162 -0.7966838 sample estimates: mean of x mean of y 12 15
Como pode ser visto no resultado, h uma diferena significativa em perda de massa mdia e a perda de peso maior para os pacientes seguindo a dieta 2. PARA AMOSTRAS PAREADAS A massa de 10 pssaros migratrios foi medida em duas ocasies, primeiro em agosto e os mesmos pssaros (marcados individualmente e recapturados) foram remedidos em setembro
> boxplot(ago,set,names=c("Agosto","Setembro")) > shapiro.test(ago) Shapiro-Wilk normality test data: ago W = 0.8701, p-value = 0.1002 > shapiro.test(set) Shapiro-Wilk normality test data: 26 set
W = 0.9302, p-value = 0.45 > var.test(ago,set) F test to compare two variances data: ago and set F = 1.6496, num df = 9, denom df = 9, p-value = 0.4674 alternative hypothesis: true ratio of variances is not equal to 1 95 percent confidence interval: 0.4097496 6.6414787 sample estimates: ratio of variances 1.649649
Os dados so normais e as varincias so homogneas. Rode o teste-t com as duas amostras pareadas. O teste de duas caudas e com as varincias iguais.
> t.test(ago,set,paired=TRUE,alternative="two.sided", var.equal=TRUE) Paired t-test data: ago and set t = -2.6119, df = 9, p-value = 0.02818 alternative hypothesis: true difference in means is not equal to 0 95 percent confidence interval: -1.6421526 -0.1178474 sample estimates: mean of the differences -0.88
O resultado indica que h uma diferena significativa entre as mdias das duas amostras e conclumos que o aumento em massa mdia entre agosto e setembro significativo.
27
Figura 10. Boxplot das duas amostras pareadas de massa (g) dos pssaros em Agosto e Setembro. ANLISE DE VARINCIA (ANOVA) O clculo de ANOVA pode ser encontrado em Captulo 10 e 11 de Zar (1999), 17 de Fowler & Cohen (1990), 13 de Vieira (1980) e 9 de Levin (1985). Uma das melhores discusses sobre as suposies do ANOVA encontrada em Captulos 7 e 8 de Underwood (1998). Teste a hiptese de que a massa mdia (g) de uma espcie de pssaro igual entre as quatro localidades de coleta (A-D, com n=10 indivduos medidos em cada local). Os dados esto contidos no arquivo massa.csv na seguinte forma: A 78 88 87 88 83 82 81 80 80 89 B 78 78 83 81 78 81 81 82 76 76 C 79 73 79 75 77 78 80 78 83 84 D 77 69 75 70 74 83 80 75 76 75
Importe os dados
> massa<-read.csv(massa.csv)
Facilite acesso s variveis
28
> attach(massa)
Calcule a mdia e desvio padro dos dados massa. Existe uma diferena significativa entre as mdias?
> mean(massa) A B C D 83.6 79.4 78.6 75.4 > sd(massa) A B C D 4.033196 2.503331 3.306559 4.141927
Verifique a maior e a menor varincia. Precisamos testar se a varincia maior (D) significativamente diferente da varincia menor (B). Se no for o caso ento nenhuma das varincias significativamente diferente das outras.
> var.test(D,B) F test to compare two variances data: D and B F = 2.7376, num df = 9, denom df = 9, p-value = 0.1496 alternative hypothesis: true ratio of variances is not equal to 1 95 percent confidence interval: 0.6799783 11.0215159 sample estimates: ratio of variances 2.737589
O resultado mostra que no h uma diferena significativa entre as varincias. Alternativamente, pode ser usado o teste de Bartlett.
> bartlett.test(massa)
29
Bartlett test for homogeneity of variances data: massa Bartlett's K-squared = 2.5279, df = 3, p-value = 0.4703
O resultado igual ao teste de F: no h uma diferena entre as varincias do grupo Para verificar a normalidade das quatro amostras, usaremos o teste de Shapiro-Wilk
> shapiro.test(A)
Dados de A so normais
30
> detach(massa)
Prosseguimos com ANOVA para verificar diferenas entre mdias, mas precisamos modificar o jogo de dados para ser lido pelo programa e os dados sero colocados em forma vertical com uma coluna fatorial (Localidade) e uma da varivel (Massa)
> attach(massa.vert)
Define a coluna Localidade como um fator
> Localidade<-factor(Localidade)
Verifique se Localidade mesmo um fator
> massa.aov<-aov(Massa~Localidade)
31
> summary(massa.aov) Df Sum Sq Localidade 3 341.90 Residuals 36 455.60 --Signif. codes: 0 `***' 0.001
F value 9.0053
A tabela de ANOVA mostra que a(s) diferena(s) entre as mdias (so) altamente significativa(s). Podemos concluir que h uma diferena significativa entre a massa mdia dos pssaros nos quatro localidades. Entretanto, a anlise no terminou ainda e para verificar entre exatamente quais pares de amostras (A-D) ocorrem diferenas signficativas usamos o teste de Tukey HSD.
Tukey multiple comparisons of means 95% family-wise confidence level factor levels have been ordered Fit: aov(formula = Massa ~ Localidade, data = massa.vert) $Localidade diff lwr upr 3-4 3.2 -1.08478062 7.484781 2-4 4.0 -0.28478062 8.284781 1-4 8.2 3.91521938 12.484781 2-3 0.8 -3.48478062 5.084781 1-3 5.0 0.71521938 9.284781 1-2 4.2 -0.08478062 8.484781
Podemos plotar as diferenas Figura 11
> plot(TukeyHSD(massa.aov,ordered=TRUE))
O grfico mostra as diferenas (intervalo de confiana 95%) entre as mdias das pares de amostras. Os pares com diferenas significativas so aqueles com limites inferiores (lwr) positivos. Os detalhes do clculo do teste de Tukey so descritos por Zar (1999) e Levin (1985). Apenas as diferenas entre A e D e A e C so significativas no nvel de 5% (p<0,05). Portanto, foram estas amostras que contribuiram para as diferenas detectadas pela ANOVA.
32
Exerccio: tenta plotar as mdias com o desvio padro (s) das amostras A-D como na Figura 6. Como possvel plotar o erro padro em vez do desvio padro?
Figura 11. Diferenas significativas do teste de TukeyHSD. Os pares de amostras com diferenas significativas so A-C e A-D. A=1, B=2, C=3, D=4.
CALCULANDO ESTATSTICAS USANDO tapply() Quando as observaes esto em uma coluna vertical com uma ou mais colunas de fatores, podemos usar a funo tapply para calcular a mdia, desvio padro, varincia, etc. Calcular a massa mdia por localidade a partir do jogo de dados massa.vert:
33
ANLISE DE VARINCIA COM DOIS FATORES MODELO I (ambos fatores fixos) Os detalhes de ANOVA com dois fatores podem ser obtidos em Captulo 17 de Fowler & Cohen (1990) e 12 de Zar (1999). Importe os dados (mostrados aqui parcialmente para facilitar visualizao). Dados sobre a Massa (g) de pssaros medidos em dois meses (Mes=Fator 1) em 4 diferentes locais (Ninho=Fator 2). H 10 rplicas em cada local ou seja o nmero total de rplicas 80. Apenas as primeiras trs rplicas de cada amostra esto mostradas aqui.
73 . 80
85 . 77
2 . 2
4 . 4
> attach(x)
Definimos e verificamos os fatores
> Mes<-factor(Mes); Ninho<-factor(Ninho) > is.factor(Mes); is.factor(Ninho) [1] TRUE [1] TRUE
Plotamos as massas mdias das 8 localidades para cada ms e o resultado mostra que o padro de variao da mdia ao longo dos dois meses parecida entre as localidades Figura 12
> x.aov<-aov(Massa~Mes+Ninho+Mes:Ninho)
Exibe a tabela de ANOVA aps rodar o teste
> summary(x.aov) Df Sum Sq Mes 1 1656.20 Ninho 6 608.60 Mes:Ninho 3 34.20 Residuals 72 1274.00 --Signif. codes: 0 `***' 0.001
A localidade do ninho afeta significativamente a massa mdia. O efeito da data de coleta (Mes) sobre massa tambm significativo. O resultado mostra que no h interao significativa, confirmando a interpretao do interaction plot acima Podemos verificar entre quais amostras h diferenas significativas.
TukeyHSD(x.aov,ordered=T) Tukey multiple comparisons of means 95% family-wise confidence level factor levels have been ordered 35
Fit: aov(formula = x$Massa ~ Mes + Ninho + Mes:Ninho) $Mes diff lwr upr 2-1 9.1 7.224955 10.97505 $Ninho diff lwr upr 3-4 3.6 0.1014801 7.09852 2-4 5.0 1.5014801 8.49852 1-4 7.4 3.9014801 10.89852 2-3 1.4 -2.0985199 4.89852 1-3 3.8 0.3014801 7.29852 1-2 2.4 -1.0985199 5.89852 $"Mes:Ninho" diff lwr [1,] 3.2 -2.6727261 [2,] 4.0 -1.8727261 [3,] 8.2 2.3272739 [4,] 8.8 2.9272739 [5,] 12.8 6.9272739 [6,] 14.8 8.9272739 [7,] 15.4 9.5272739 [8,] 0.8 -5.0727261 [9,] 5.0 -0.8727261 [10,] 5.6 -0.2727261 [11,] 9.6 3.7272739 [12,] 11.6 5.7272739 [13,] 12.2 6.3272739 [14,] 4.2 -1.6727261 [15,] 4.8 -1.0727261 [16,] 8.8 2.9272739 [17,] 10.8 4.9272739 [18,] 11.4 5.5272739 [19,] 0.6 -5.2727261 [20,] 4.6 -1.2727261 [21,] 6.6 0.7272739 [22,] 7.2 1.3272739 36
upr 9.072726 9.872726 14.072726 14.672726 18.672726 20.672726 21.272726 6.672726 10.872726 11.472726 15.472726 17.472726 18.072726 10.072726 10.672726 14.672726 16.672726 17.272726 6.472726 10.472726 12.472726 13.072726
-1.8727261 9.872726 0.1272739 11.872726 0.7272739 12.472726 -3.8727261 7.872726 -3.2727261 8.472726 -5.2727261 6.472726
H apenas dois nveis no fator Mes, ento qualquer diferena significativa tem que ser entre os dois meses. Em termos do fator Ninho, o ninho 4 diferente dos demais ninhos e ninho 1 diferente de ninho 3. Plote um grfico mostrando as diferenas entre os ninhos do Tukey HSD Figura 13
> q()
Figura 12. Grfico de interao: a variao na massa mdia entre os locais parecida entre os dois meses.
Figura 13. Diferenas significativas do teste TukeyHSD. Os pares de ninhos com diferenas significativas so 1-3, 1-4, 2-4 e 3-4.
37
MAIS UM EXEMPLO DE ANOVA MODELO I DE DOIS FATORES (ambos fatores fixos) Exemplo de Zar (1999), p.233. Dados sobre o efeito de tratamento e sexo sobre nveis de plasma. Fator 1 = tratamento, 1 = sem hormnio, 2 = com hormnio. Fator 2 = sexo, 1 = fmea, 2 = macho. Importe os dados.
> x<-read.csv("plasma.csv"); x plasma tratmento sexo replicas 1 16.5 1 1 2 18.4 1 1 3 12.7 1 1 4 14.0 1 1 5 12.8 1 1 6 14.5 1 2 7 11.0 1 2 8 10.8 1 2 9 14.3 1 2 10 10.0 1 2 11 39.1 2 1 12 26.2 2 1 13 21.3 2 1 14 35.8 2 1 15 40.2 2 1 16 32.0 2 2 17 23.8 2 2 18 28.8 2 2 19 25.0 2 2 20 29.3 2 2
1 2 3 4 5 1 2 3 4 5 1 2 3 4 5 1 2 3 4 5
> attach(x)
Definimos os fatores
> interaction.plot(tratmento,sexo,plasma)
No h interao entre tratamento e sexo e ainda h um grande efeito de tratamento enquanto o efeito de sexo pouco (pouca distncia entre as linhas paralelas). Rode ANOVA sobre a varivel plasma com dois fatores tratamento e sexo e com um teste para interao entre os dois fatores
38
> x.aov<-aov(plasma~tratmento+sexo+tratmento:sexo) > summary(x.aov) Df Sum Sq Mean Sq tratmento 1 1386.11 1386.11 sexo 1 70.31 70.31 tratmento:sexo 1 4.90 4.90 Residuals 16 366.37 22.90 --Signif. codes: 0 `***' 0.001 `**' 0.01
O resultado mostra que no h interao significativa, no h efeito de sexo e que o efeito de tratamento altamente significativo, confirmando a interpretao do grfico de interao (interaction.plot) Figura 14 Calcular a mdia e desvio padro por tratamento e sexo a partir do jogo de dados x:
> tapply(plasma, tratamento:sexo, mean) > tapply(plasma, tratamento:sexo, sd) > detach(x) > q()
Figura 14. Grfico de interao mostrando a ausncia de interao (linhas paralelas), pouco efeito de sexo (distncia curta entre linhas) e um grande efeito de tratamento (diferena grande na mdia entre tratamentos 1 e 2). Sexo: ----fmea, ___macho.
39
TESTE DE WILCOXON RANK SUM TEST (equivalente a TESTE U DE MANN-WHITNEY ) PARA OBSERVAES INDEPENDENTES Detalhes do teste podem ser encontrados em Zar (1999) p. 145, Captulo 10 de Levin (1985) e 16 de Fowler & Cohen (1990). Para testar para uma diferena entre as medianas de duas amostras: nmeros de besouros capturados durante a noite em 8 armadilhas no hbitat A e em 7 armadilhas no hbitat B
> wilcox.test(A,B) Wilcoxon rank sum test with continuity correction data: A and B W = 47.5, p-value = 0.02761 alternative hypothesis: true mu is not equal to 0 Warning message: Cannot compute exact p-value with ties in: wilcox.test.default(A, B)
O resultado do teste mostra que h uma diferena significativa entre as medianas das amostras A e B. O Wilcoxon Rank Sum Test (equivalente ao Teste U de Mann-Whitney) testa a hiptese nula na qual as medianas das distribuies de A e B diferem pelo valor de . Desde que o valor padro de =0, signifique que a hiptese nula que as medianas so iguais TESTE DE WILCOXON SIGNED RANK TEST PARA OBSERVAES PAREADAS Mais informaes podem ser obtidas em Zar (1999) p. 145, Captulo 16 de Fowler & Cohen (1990). O Wilcoxon Signed Rank Test igual ao Wilcoxon Rank Sum Test com a diferena que as duas amostras tm observaes pareadas.
A massa de 10 pssaros migratrios foi medida em duas ocasies, primeiro em agosto e os mesmos pssaros (marcados individualmente e recapturados) foram medidos novamente em setembro
40
> boxplot(ago,set,names=c("Agosto","Setembro"))
Parece que os pssaros ganharam peso entre agosto e setembro, mas essa diferena significativa? Rode o teste de Wilcoxon agora com paired=TRUE, para indicar se as observaes so pareadas
> wilcox.test(ago,set, paired=TRUE) Wilcoxon signed rank test data: ago and set V = 8, p-value = 0.04883 alternative hypothesis: true mu is not equal to 0
O resultado mostra que h uma diferena significativa entre as massas medianas das duas amostras e podemos inferir que os pssaros tm uma massa significativamente maior em setembro
> q()
Figure 15. Nmero mediano de besouros capturados em duas amostras independentes em hbitat A e hbitat B.
41
TESTE DE KRUSKAL-WALLIS (ANOVA NO PARAMTRICA DE UM FATOR) Mais informaes podem ser obtidas na p. 195 de Zar (1999), Captulo 10 de Levin (1985) e 16 de Fowler & Cohen (1990). Os dados no precisam ser distribudos normalmente, mas as distribuies das amostra devem ser semelhantes entre si. H diferenas de opinio sobre a questo da homogeneidade das varincias (veja Zar,1999 e Fowler & Cohen, 1990 versus Underwood, 1998). O nmero de orqudeas em cinco quadrados em quatro campos (A-D).
> summary(A) Min. 1st Qu. Median 7.0 8.0 14.0 14.8 18.0 27.0 > summary(B) Min. 1st Qu. Median Mean 18.0 22.0 32.0 34.2 48.0 51.0 > summary(C) Min. 1st Qu. Median Mean 0.0 3.0 8.0 7.4 11.0 15.0 > summary(D) Min. 1st Qu. Median Mean 39.0 44.0 55.0 58.2 72.0 81.0
Plote as estatsticas das amostras Figura 16
Max.
3rd Qu.
Max.
3rd Qu.
Max.
3rd Qu.
Max.
> orq.dados
42
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20
Campo 1 1 1 1 1 2 2 2 2 2 3 3 3 3 3 4 4 4 4 4
Orquideas 27 14 8 18 7 48 18 32 51 22 11 0 3 15 8 44 72 81 55 39
> kruskal.test(Orquideas~Campo, orq.dados) Kruskal-Wallis rank sum test data: Orquideas by Campo Kruskal-Wallis chi-squared = 14.602, df = 3, p-value = 0.002190
O teste mostra que h uma diferena (ou diferenas) significativa(s) entre as medianas do grupo de quatro amostras. H vrios mtodos para efetuar comparaes mltiplas no-paramtricas (Zar, 1999, p. 223). Alternativamente, o teste pode ser rodado assim, dando o mesmo resultado!
Deve ser observado que o [1] e [15] indicam a primeira e a dcima-quinta observao, respectivamente. Organize um arranjo de 1 a 4 amostras com 5 rplicas em cada e com as etiquetas A a D. Nota: SE TIVESSE uma rplica a mais na amostra A, ento o nmero de rplicas seria c(6,5,5,5).
> g<-factor(rep(1:4, c(5, 5, 5, 5)),labels=c("A","B","C","D")) > kruskal.test (orq.dados, g) Kruskal-Wallis rank sum test data: orq.dados and g Kruskal-Wallis chi-squared = 14.602, df = 3, p-value = 0.002190
Novamente o resultado idntico aos anteriores!
> q()
44
Figura 16. Boxplot dos dados A, B, C, D. CORRELAO E REGRESSO Veja Captulo 6 e 7 de Vieira (1980), 11 de Levin (1985), 14 e 15 de Fowler & Cohen (1990) e 17 e 19 de Zar (1999). Coeficiente de correlao de Spearman (no paramtrico) Diversidade de gafanhotos (y) em relao ao nmero de anos depois da aplicao de pesticidas (x)
> x<-c(0,1,3,5,9,12,13,15,21,25) > y<-c(0,0.19,0.15,1.49,1.10,1.12,1.61,1.42,1.48,1.92) > x [1] 0 1 3 5 9 12 13 15 21 25 > y [1] 0.00 0.19 0.15 1.49 1.10 1.12 1.61 1.42 1.48 1.92
Plotamos as duas variveis em um grfico de disperso Figura 17
data: x and y S = 32, p-value = 0.008236 alternative hypothesis: true rho is not equal to 0 sample estimates: rho 0.8060606
O valor da estimativa do coeficiente de Spearman rs 0,806 e a correlao altamente significativa. Podemos inferir que h uma correlao positiva e significativa entre diversidade de gafanhotos e o tempo aps aplicao de pesticidas. Coeficiente de correlao de Pearson (paramtrico)
x <-c(6.6,6.9,7.3,7.5,8.2,8.3,9.1,9.2,9.4,10.2) y <-c(86,92,71,74,185,85,201,283,255,222)
Plotamos a relao em um grfico de disperso Figura 18
> cor.test(x,y,method="pearson",alternative="two.sided") Pearson's product-moment correlation data: x and y t = 4.3546, df = 8, p-value = 0.00243 alternative hypothesis: true correlation is not equal to 0 95 percent confidence interval: 0.4428186 0.9608852 sample estimates: cor 0.8386271
O valor da estimativa do coeficiente de Pearson r 0,8386 a correlao altamente significativa. Podemos inferir que h uma correlao positiva e significativa entre comprimento do otlito e a massa do peixe.
Um exemplo de regresso simples linear: dados sobre a massa de fertilizante (gm-2) aplicada (x) e a
46
x <-c(25,50,75,100,125,150,175,200,225,250) y <-c(84,80,90,154,148,169,206,244,212,248)
Aplique a regresso linear simples pelo mtodo de quadrados mnimos e mostre os resultados
> fertilizante.lm<-lm(y~x) > summary(fertilizante.lm) Call: lm(formula = y ~ x) Residuals: Min 1Q Median -22.79 -11.07 -5.00
3Q 12.00
Max 29.79
Coefficients: Estimate Std. Error t value Pr(>|t|) (Intercept) 51.93333 12.97904 4.001 0.00394 ** x 0.81139 0.08367 9.697 1.07e-05 *** --Signif. codes: 0 `***' 0.001 `**' 0.01 `*' 0.05 `.' 0.1 ` ' 1 Residual standard error: 19 on 8 degrees of freedom Multiple R-Squared: 0.9216, Adjusted R-squared: 0.9118 F-statistic: 94.04 on 1 and 8 DF, p-value: 1.067e-05
O intercepto y 51,933 e o gradiente 0,81139. A regresso tem a frmula y = 0,81139 x + 51,933 No R, a significncia da regresso testada pela ANOVA. O valor de F significativo com 1 e 8 graus de liberdade e concluamos que a regresso altamente significativa. Detalhes da ANOVA para testar a significncia da regresso:
> anova(fertilizante.lm) Analysis of Variance Table Response: y x Residuals --47 Df 1 8 Sum Sq 33947 2888 Mean Sq 33947 361 F value 94.041 Pr(>F) 1.067e-05 ***
Signif. codes:
As quantidades importantes so a varincia da regresso (33947) e a varincia residual (361) com 1 e 8 graus de liberdade, respectivamente. Plote os dados
48
Figura 17. Diversidade de gafanhotos em relao ao nmero de anos aps aplicao de pesticidas.
Figura 19. Regresso simples linear entre a massa de fertilizante e a colheita de grama.
49
FUNES MISCELNEAS TEIS Para planejar uma amostragem aleatria, usa a funo sample() Tire uma amostra aleatria de 10 observaes/indivduos/posies a partir de uma populao de 100
> x<-sample(1:100,10) ;x
Arranje as observaes em ordem crescente. Brincadeira: qual a mediana?
> sort(x)
Crie um ranking das observaes.
> rank(x)
Qualquer grfico produzido em R pode ser exportado em vrias formas incluindo postscript, pdf, jpeg,png,bmp, etc. Para ver as opes dos diferentes formatos p.ex. png use
> help(png)
Exemplo
> barplot(x)
Termine o grfico e fecha o dispositivo jpeg
> dev.off()
Agora deve ter um arquivo grfico chamado meugrfico.jpg no seu diretrio de trabalho que pode ser inserido em um documento de texto - Figura 20
50
51
ANLISE MULTIVARIVEL BSICA Anlise multivarivel um tpico complexo e h muitas tcnicas complementares e alternativas. Consulte a bibliografia para decidir quais so apropriados para seus dados. Importar dados (dadosmv.csv), especifique a presena de um cabealho e que a primeira coluna contem os nomes das fileiras
> x<-read.csv("dadosmv.csv",header=T,row.names=1)
Para usar algumas funes preciso carregar a biblioteca vegan. Esta pode ser baixada do site do R e instalada antes de prosseguir. Carregar a biblioteca vegan
> library(vegan)
Calcular o ndice de diversidade Shannon usando o logaritmo natural (opo padro)
> diversity(x,"shannon") Stio A 0.6365142 Stio B 1.0296530 Stio C 0.6931472 Stio D 1.1637233
> x.dist<-vegdist(x,"bray")
Criar o agrupamento hierrquico com ligao mdia sobre a matriz de dissimilaridade Bray-Curtis
x.clust<-hclust(x.dist,"average")
Plotar o dendrograma (veja opes de plot digitando ?hclust)
> library(MASS) 52
(graphics) para ver a capacidade grfica de R. H tambm a possibilidade de realizar ANOSIM, PCA,
e outras tcnicas multivariveis no R.
53
54
DISTRIBUIES DE PROBABILIDADE Podemos criar distribuies de probabilidade de diferentes famlias (Gaussiano ou Normal, Binomial, Poisson e Binomial Negativa) usando valores personalizados dos parmetros das distribuies. Distribuio normal Para visualizar uma distribuio normal de probabilidade (parmetros: e ) com a mdia da amostra =74.0 e s =2,34 (estimativas de e , respectivamente) para as observaes entre 68 e 80 use:
> barplot(dnorm(68:80, 74.0, 2.34), col=2, names=c(68:80), xlab=Comprimento da planta (mm), ylab=Probabilidade)
Distribuio Binomial Para visualizar uma distribuio Binomial de probabilidade com k=8 ensaios, p=q=0,5 e para o nmero de resultados nomeados entre 0 a 8 use:
> barplot(dnbinom(0:8, mu=2, size=1.33), col=3, names=c(0:8), xlab=Nmero de indivduos por unidade de amostragem, ylab=Probabilidade)
Criando distribuies de probabilidade permitem ns testar se dados biolgicos sobre a disperso de organismos no seu ambiente conformem aos modelos Binomial (disperso regular), Poisson (disperso aleatria) ou Binomial Negativa (disperso contagiosa ou agregada). Veja Elliott (1983) ou Fowler & Cohen (1990) para mais detalhes.
55
REFERNCIAS BIBLIOGRFICAS Elliott, JM (1983) Some methods for the statistical analysis of samples of benthic invertebrates. Freshwater Biological Association Scientific Publication No. 25. Fowler J & Cohen L (1990) Practical statistics for field biology. John Wiley & Sons, Chichester. Levin J (1985) Estatstica aplicada a cincias humanas. Harper & Row do Brasil, SP. Ihaka R & Gentleman R (1996) R: A Language for Data Analysis and Graphics. Journal of Computational and Graphical Statistics 5 (3): 299-314. Jongman RHG, Ter Braak CJF & Van Tongeren, OFR (1995) Data analysis in community and landscape ecology. Cambridge University Press. Underwood AJ (1998) Experiments in ecology. Their logical design and interpretation using analysis of variance. Cambridge University Press. Vieira S (1980) Introduo bioestatstica. Editora Campus Zar JH (1999) Biostatistical analysis. Prentice Hall, Upper Saddle River, NJ.
Copyright (c) 2004 Colin Robert Beasley. dada permisso para copiar, distribuir e/ou modificar este documento sob os termos da Licena de Documentao Livre GNU, Verso 1.2 ou qualquer verso posterior publicada pela Free Software Foundation; sem nenhum Seo Invariante, sem nenhum Texto da Capa da Frente, e sem nenhum Texto da Quarta-Capa. Uma cpia da licena pode ser consultada no endereo http://www.fsf.org/licence/. Uma traduo no-oficial desta para o portugus do Brasil pode ser encontrado no endereo: http://www.ead.unicamp.br/minicurso/bw/texto/fdl.pt.html.
56