====== Cláudia ====== Doutorado em Oceanografia Biológica, Instituto Oceanográfico-USP. Tese: “ESTUDO DAS LARVAS DE PEIXE-LATERNA (MYCTOPHIDAE) E SUA RELAÇÃO COM OS FATORES BIÓTICOS E ABIÓTCOS, ENTRE CABO DE SÃO TOMÉ (RJ) E SÃO SEBASTIÃO (SP)”. Orientador Prof. Dr. Mario Katsuragawa. ====== Meus Exercícios ====== [[.:exec]] ====== Trabalho Final ======= ===== Plano A ===== Criar uma função para estimar os parâmetros da equação de Gompertz Lt = Loexp {G (1 – exp [-gt])} e analisar a taxa de crescimento em larvas de peixe a partir desta equação, onde: Lt = comprimento larval na idade t; Lo = comprimento larval hipotético na idade zero (eclosão); G = primeiro parâmetro de crescimento de Gompertz; g = segundo parâmetro de crescimento de Gompertz. Esta equação tem sido utilizada com mais freqüência para representar trajetórias de crescimento larval em diversas espécies (Campana & Jones, 1992). A idade das larvas é obtida através da leitura de anéis diários formados nos otóltos. Também pretende-se obter a taxa de crescimento absoluto, que pode ser derivada da equação de crescimento de Gompertz, AGR = g . Lt [ln(Lo . eG) - ln(Lt)], onde AGR = coeficiente de crescimento diário instantâneo (Ricker, 1979; Campana & Jones, 1992). Referência Campana, S.E. & Jones, C. 1992. Analysis of otolith microstructure. Can. Spec. Publ. Fish. Aquat. Sci., 117: 73-100. Ricker, W.E. 1979. Growth rates and models. In: Fish physiology VIII. Ed. Hoar et al. Academic Press, London, p.678-743. °° <*)}}< ==== Plano B ==== Criar uma função para aplicar o modelo do nicho trófico, onde são analisadas as relações entre tamanho de presa e predador. Este modelo adota o desvio padrão do tamanho da presa transformado em log10 como uma medida da largura do nicho trófico. Nesta análise a larva de peixe é classificada de acordo com o comprimento padrão* em intervalos de 0,1 mm. A relação entre o comprimento padrão da larva e a média correspondente do desvio padrão do tamanho da presa transformado em log10 será analisado usando regressão linear para determinar qualquer tendência na largura do nicho conforme o crescimento. *comprimento padrão= medida que se extende da ponta do focinho da larva até o final notocorda. ==== Plano C ==== Fazer uma análise exploratória de dados. Na minha planilha, as amostras estão ordenadas por linha e as espécies nas colunas. Além disso, existem outras variáveis como local (costeira,plataforma e oceanica), horário de coleta (dia ou noite) e o volume de água filtrada. Minha proposta número 3 é fazer uma função que calcule a densidade de cada espécie em cada amostra, dividindo o numero de indivíduos pelo volume de água filtrada. Depois, fazer o cálculo da frequência de ocorrência, abundância total e relativa. Gostaria de ordenar as epécies, da mais abundante para a menos abundante. A saída seria um data.frame com os dados de contagem trasformados em densidade e uma lista (ou outro data.frame) com as espécies em ordem decrescente de abundância relativa. Além disso serão criados box plots e espalhagramas para cada espécie, por local e horário de coleta. Depois gostaria de testar se há diferença entre local e horário de coleta para as cinco espécies mais abundantes, mas aí acho que eu teria que fazer outra função.. ====== Comentários ======= Paulo: tenham certeza que vc sabe o que entra e o que sai da função, fiquei um pouco perdido. O que entendi é que entram medidas de tamanho de peixes e outra de otólitos (q9e devem ser convertidas em tempo), é isto? Se a saída são os parâmetros do modelo, pense em incluir também disgnósticos ou intervalos de confiança (podem ser bootstrap). Para ajustes não-lineares com erros normais veja a função ''nls''. Musgo: A proposta C é interessante, plausível e vai demandar bastante manipulação de dados. Faça argumentos para o usuário escolher se quer os gráficos ou não (ou somente alguns de todos os gráficos possíveis). Como sua função está dividida em duas partes, primeiro faça a parte de manipulação dos dados e depois invista na implementação dos gráficos. Note que você terá quatro gráficos para cada espécie, se tiver muitas espécies sua função pode ter que criar dezenas de gráficos, tenha cuidado. Deixe o teste para depois, já que este pode ser facilmente efetuado depois de sua função organizar todos os dados. ====== Página de Ajuda ====== plankton.abu package:nenhum R Documentation Cálculo de abundância e análise preliminar de dados Description: Calcula a abundância das espécies, através da multiplicação do número de indivíduos pelo d/v (profundidade de coleta/volume de água filtrada pela rede de plâncton). Gera os valores de abundância total, abundância relativa, frequência de ocorrência, média e valor máximo observado para cada espécie. Também gera dois gráficos tipo espapalhagrama com os valores abundancia media e maxima das espécies e um grafico espécie x fator para cada espécie. Usage: plankton.abu(dados, dv, first, last, fator, is.na= TRUE) Arguments: dados data.frame contendo o número de indivíduos de cada espécie em cada amostra. As amostras devem estar representadas nas linhas e as espécies (variáveis) nas colunas. No caso de um data.frame pode apresentar outras variáves da classe "factor" (ex: local, periodo do dia, estação do ano). dv data.frame contendo os dados de d/v das respectivas amostras. Deve apresentar o mesmo número de linhas do argumento dados. first número da primeira coluna que contém uma variável espécie. last número da última coluna que contém uma variável espécie. fator número da coluna que contem o fator para gerar os gráficos das espécies is.na retorna NA para dados faltantes. Value: Abundancia= data.frame com os valores de abundância por amostra para cada espécie. Abundancia total= matriz com os valores de abundância total para cada espécie Abundância relativa = matriz com os valores em porcentagem da abundância de cada especie em relação a abundância total. Frequência de ocorrência = matriz com valores em porcentagem do número de ocorrência de cada espécie em relação ao numero total de amostras. Média: matriz com valores de média de cada espécie. Máximo: matriz com valores máximos de cada espécie. Gráfico com as médias de cada espécie Gráfico com os valores maximos de cada especie N gráficos espécie por fator Warning: Dependendo do número de espécies contidas no data.frame o programa pode demorar para gerar todos os gráficos. Author(s): Cláudia Namiki namiki@usp.br References: Smith, P.E. & Richardson, S.L. 1977. Standard techniques for pelagic fish egg and larvae surveys. FAO Fish. tech. Pap., 175:1-100. See Also: data.frame, plot, factor, matrix Examples: ##Lê o arquivo com dados da espécie dados= read.csv("ictiopkt.csv", header=T, sep=",") ## Verificar o arquivo para verificar os numeros das colunas que serão utilizadas str(dados) dim(dados) ## Lê o arquivo com dados de d/v dv2=read.csv("dv.csv", header=T, sep=",") plankton.abu(dados,dv2, 5,15,3 ) plankton.abu(dados,dv2, 7,12,4 ) {{:bie5782:01_curso_atual:alunos:trabalho_final:claudia:ictiopkt.csv|}} {{:bie5782:01_curso_atual:alunos:trabalho_final:claudia:dv.csv|}} ====== Código da Função ====== ################################ Função plankton.abu <*)}}< ########################################################################################################################## plankton.abu=function (dados, dv, first, last, fator,is.na= T) ## dados= data.frame com as espécies e outras variáveis, dv data.frame com o volume de água filtrada, ## first=primeira coluna com dados de espécie, last= última coluna com dados de espécie, fator= variavel fator { dados[is.na(dados)==T] = 0 ## transformando NAs em zeros a=dados ## criando objeto para dados b=as.matrix( a[,first:last],rownames.force = NA) ## criando objeto para matriz com as colunas escolhidas dv=as.matrix(dv,rownames.force= NA) ## criando matriz com os dados de água filtrada: profundidade de coleta/volume abund=matrix(0, nrow=dim(b)[1], ncol=dim(b)[2], dimnames=dimnames(b)) ## objeto para guardar a matriz de abundancia ##gerando os dados de abundancia for (i in 1:(dim(b)[2])) { abund[,i]= round(((b)[,i])*((dv)[,1]),4) } old.abund=data.frame(abund) ## criando data.frame contendo apenas os dados de abundancia das espécies new.abund=data.frame(a[1:first-1], abund)## criando data.frame contendo os dados de abundancia das espécies e outras variaveis ## Saida de dados A.total= round(apply(old.abund, MARGIN=2, FUN=sum),2) ## soma dos valores de abundancia de cada espécie sorte=sort(A.total, decreasing=T) porcent = round((A.total/sum(abund)*100),2) ## calcula a porcentagem de cada indivíduo em relação ao total coletado na campanha #ordem=order(A.total, decreasing=T) ##Ordenado as espécies por ordem decrescente de abundância, no caso numero de indiíduos media= round(apply(abund, MARGIN=2, FUN=mean),2) maximo= round(apply(abund, MARGIN=2, FUN=max),2) mediatotal=mean(abund) ## gerando gráfico espahagrama media e maximo plot(media, bty="l",xlab="especie por numero do data.frame", ylab="media (ind.m2)") ## gráfico com as médias de cad espécie lines(c(0,27), c(mediatotal, mediatotal), col="blue") ## plota linha da média das espécies x11() plot(maximo, bty="l", xlab="especie por numero do data.frame", ylab="maximo (ind.m2)") ## grafico com os valores maximos de cada especie lines(c(0,27), c(mediatotal, mediatotal), col="blue") ## plota linha da média das espécies ## gerando gráficos especie por fator for(i in first:last) ## seleciona as especies { x11() ## abre novo dispositivo gráfico plot(new.abund[,i]~ new.abund[,fator], xlab=paste("Fator",fator),ylab= paste("Especie",i), bty="l") } ##Frequencia de ocorrencia b[b>0]=1 ## presença ou ausência = valores maiores do que zero são transformados em 1. FO= round((apply(b, MARGIN=2, FUN=sum)/(dim(b)[1])*100),2) ## calcula a frequencia de ocorrencia para cada espécie, em relação ao numero total de amostras. ## Resultados results= list("Densidade"=new.abund,"Abundancia total"=A.total, "Abundancia relativa"=porcent, "Frequencia de ocorrencia"=FO, "Abundancia Media"= media, "Media total"= mediatotal, "Abundancia maxima"=maximo,"Ordem de abundancia"= sorte) return(results) } ====== Arquivo da Função ====== {{:bie5782:01_curso_atual:alunos:trabalho_final:claudia:plankton_abu.r|}} {{:bie5782:01_curso_atual:alunos:trabalho_final:claudia:ictiopkt.csv|}}{{:bie5782:01_curso_atual:alunos:trabalho_final:claudia:dv.csv|}}