====== Camila de Barros ====== {{:bie5782:01_curso_atual:alunos:trabalho_final:camiladebarros:página.jpg|}} Doutoranda em Ecologia, Departamento de Ecologia Universidade de São Paulo ===== Meus Exercícios ===== Linque para a página com os meus exercícios resolvidos Exercício 1: {{:bie5782:01_curso_atual:alunos:trabalho_final:camiladebarros:camila_barros_1_f.r|F}} Exercício 2: {{:bie5782:01_curso_atual:alunos:trabalho_final:camiladebarros:exercício_2_camila_barros_f.r|F}} Exercício 3: {{:bie5782:01_curso_atual:alunos:trabalho_final:camiladebarros:exercicio_3_camila_barros_f_3.txt|F}} Exercício 4: {{:bie5782:01_curso_atual:alunos:trabalho_final:camiladebarros:exercicio_4_camila_barros_f.r|F}} Exercício 5: {{:bie5782:01_curso_atual:alunos:trabalho_final:camiladebarros:exercício_5_camila_barros_f.r|F}} Exercício 6: {{:bie5782:01_curso_atual:alunos:trabalho_final:camiladebarros:exercícios_6_camila_barros_f.r|F}} Exercício 7: {{:bie5782:01_curso_atual:alunos:trabalho_final:camiladebarros:exercício_7_camila_barros_f.r|F}} Exercício 8: {{:bie5782:01_curso_atual:alunos:trabalho_final:camiladebarros:exercício_8_camila_barros_f.r|F}} Exercício 9: {{:bie5782:01_curso_atual:alunos:trabalho_final:camiladebarros:exercicio_9_camila_barros_f.r|F}} ===== Trabalho final ===== ==== Plano A ==== Os registros dos dados de estudos populacionais de captura-marcação-recaptura (CMR) de animais são geralmente feitos em uma planilha onde nas linhas estão anotados os registros de cada captura e nas colunas as diferentes variáveis medidas. Cada captura de um animal possui um número de registro com todas as informações coletadas nesse evento registradas nessa linha. Esta planilha é excelente para a armazenagem dos dados brutos, contudo, para a análise desses dados é necessário um arquivo no formato de 0 e 1, conhecido por calendário de capturas. Nesse arquivo cada linha corresponde a um indivíduo e cada coluna a uma data de captura. Desta forma, é possível visualizar o histórico de capturas da espécie ao longo do tempo, podendo-se estimar, por exemplo, o tamanho da população, taxa de sobrevivência e taxa de recrutamento. Um dos métodos mais simples para estimativa de tamanho populacional é o //Minimum number know alive// (MNKA), que nada mais é do que a contagem dos indivíduos capturados em uma campanha somados aos indivíduos que foram coletados antes e depois desta campanha. Para tanto, assume-se que a população era fechada e estes indivíduos estavam presentes e apenas não foram capturados. Apesar de simples e talvez um pouco ingênuo, este método é uma boa ferramenta quando não há capturas suficientes para a utilização de estimadores mais precisos. Esta ampla utilização gera uma estimativa que, no mínimo, é uma boa exploração dos dados. O objetivo do meu trabalho final é, portanto, criar uma função que faça a transformação da planilha de registros dos dados de campo de um estudo de CMR em um calendário de capturas, o que facilitaria enormemente a vida de quem utiliza CMR já que a transformação manual leva vários dias, o que além do tempo perdido aumenta consideravelmente a possibilidade de erros. Junto com a função de transformação da planilha quero também incluir um cálculo de MNKA para ser utilizado como análise exploratória dos dados. Exemplo de planilha de registro de dados brutos: {{:bie5782:01_curso_atual:alunos:trabalho_final:camiladebarros:exemplo_dados_brutos.xls| Exemplo de Registro de Dados Brutos}} Exemplo de planilha de calendários de captura (planilha de 0 e 1, onde 1 indica captura do indivíduo) {{:bie5782:01_curso_atual:alunos:trabalho_final:camiladebarros:exemplo_cc.xls|Exemplo de Calendário de Capturas}} === Comentários PI === Ótimo desafio! Comece com uma função que atenda ao tipo específico de planilha que vc tem, e depois pense em como tornar a função mais geral. Vamos nos falando à medida que vc trabalha. ==== Plano B ===== Análises de padrões de reprodução de uma população animal parte da análise gráfica de dados temporais como indivíduos reprodutivos ou não por campanha, razão sexual da população e classes etárias da população. Esses gráficos ficam mais informativos quando contrastados com quantidade de chuva ou quantidade de recursos alimentares. O objetivo do meu trabalho final será a criação de uma função exploratória de dados que crie todos esses gráficos a partir dos dados fornecidos pelo usuário. === Comentários PI === Também muito boa. Ainda prefiro a primeira, mas se a coisa enroscar esta aqui não afz feio não. ==== Página de Ajuda ===== ---- MNKA package:nenhum R Documentation Estimativa de tamanho populacional de dados obtidos por captura-marcação-recaptura utilizando o estimador MNKA (//Minimum number know alive//). Description: A partir de um data.frame contendo as sessões de captura (primeira coluna) e indivíduos capturados (segunda coluna), cria uma tabela com número de capturas de cada indivíduo por sessão de amostragem e estima o tamanho populacional por sessão através do método MNKA . Usage: MNKA(a) Arguments: a: dados no formato csv. Details: Os dados da tabela original devem ter a primeira coluna com a sessão de amostragem e na segunda coluna o número da marcação de cada indivíduo. Essa planilha é transformada através da função table na e depois é estimado o valor de MNKA. Value: Uma tabela com o número de capturas de indivíduos por sessão é criada no diretório atual. Na tela retorna o tamanho populacional estimado por sessão. Author(s): Camila Barros camiladebarros@usp.br References: Krebs, C. J. 1999. Ecological Methodology, 2 edition. Benjamin Cummings.624 pages. See Also: 'table' pacote base Examples: dados = read.csv("exemplo.csv", sep=";", header=T, as.is=T, na.strings=" ") MNKA (dados) ==== Código da Função ===== ####Função Trabalho Final Camila Barros ############# ###COMEÇA A FUNÇÂO###### MNKA=function(a) ##a é o data frame com as sessões na coluna 1 e as tags capturadas na coluna 2 { x = unique(a[,1]) #sessões y = sort(unique(a[,2])) #tags tab=(t(table(a))) write.csv(tab, "Calendário de captura_sessão.csv") resulta= matrix(NA, ncol=length(x), nrow=length(y),dimnames=list(y,x)) for(i in 1:length(y)) { for (j in 1:length(x)) { if ((tab[i,j]!=0)==T) { resulta[i,j]=1 } if ((tab[i,j]==0 & (sum(tab[i,(1:j)])>=1) & (sum(tab[i,(j:length(x))])>=1))==T) { resulta[i,j]=1 } } } cat("\n Um calendário de capturas por sessão foi salvo no diretório. \n\n Valores das estimativas de MNKA (segunda linha) por sessão (primeira linha): \n ") return(apply(resulta,2, FUN=sum,na.rm=T)) } ###FINAL DA FUNÇÂO###### ==== Teste da função ==== {{:bie5782:01_curso_atual:alunos:trabalho_final:camiladebarros:exemplo.csv|}} dados = read.csv("exemplo.csv", sep=";", header=T, as.is=T, na.strings=" ") MNKA (dados) ==== Arquivo da função ==== {{:bie5782:01_curso_atual:alunos:trabalho_final:camiladebarros:função_camila_barros.txt|}}