Índice
O Curso
Material de Apoio
Área dos Alunos
Visitantes
Forum
notaR
Área Restrita
Cursos Anteriores
IBUSP
Outras Insitutições
IBUSP
Outras Insitutições
Função para realizar algumas análises para dados de fenologia de plantas e variáveis ambientais. A matriz de entrada teria indivíduos ou espécies nas linhas e nas colunas, as fenofases amostradas (podem ser variáveis quantitativas discretas ou categóricas, no caso de se amostrar presença ou ausência de flores, por exemplo), local e data da amostragem. Outra matriz conteria os dados de temperatura mínima, temperatura máxima e precipitação para cada dia.
Local | Data | Indivíduo | Brotação foliar | Floração | Frutos verdes | Frutos maduros |
---|---|---|---|---|---|---|
A | dd/mm/aa | Ind 1 | 0 | 0 | x | k |
A | dd/mm/aa | Ind 2 | 1 | 1 | y | l |
A | dd/mm/aa | Ind n | 1 | 0 | z | m |
Data | Temperatura Mínima | Temperatura Máxima | Precipitação |
---|---|---|---|
dd/mm/aa | a | d | g |
dd/mm/aa | b | e | h |
dd/mm/aa | c | f | i |
Atualmente é comum a utilização de armadilhas fotográficas em estudos de mamíferos de médio e grande porte. Usualmente são construídas planilhas em que as linhas contêm os registros e as colunas contêm uma série de informações, como as coordenadas geográficas da armadilha fotográfica, a data e hora de cada registro, o tipo do local de amostragem (estrada, trilha, floresta, canavial, etc), a identificação do registro (família, gênero, espécie), o tipo de habitat, dentre outras informações.
Amostragem | Latitude | Longitude | Data do registro | Hora do registro | Tipo de local | Identificação taxonômica |
---|---|---|---|---|---|---|
Área 1 - ano 1 | x | y | dd/mm/aa | hh:mm | a | b |
As duas propostas estão mais com jeito de script do que de função, ou seja, parecem a descrição de duas análises de dados. A função deve realizar uma tarefa geral, ou seja, a função será útil para outros pesquisadores também. Com relação à proposta A, uma sugestão seria focar somente na descrição da fenologia, através de um gráfico ou outros descritores. Isto é um problema bastante genérico entre os botânicos, certo? Depois que você implementar esta parte mais básica, você pode partir pra outras opções e argumentos da função, como a opção de produzir diferentes tipos de gráficos, ou diferentes descritores da fenologia de uma espécie. Enfim, busque um equilíbrio entre simplicidade e complexidade. Usualmente a função executa uma tarefa que exigiria tempo e trabalho do pesquisador. Deixe bem claro qual a tarefa principal que a função vai realizar e sua generalidade. O mesmo raciocínio vale para a proposta B, mas eu sugiro investir na ideia da proposta A. —- Leonardo
Pelo fato de haver muitas pessoas que utilizam armadilhas fotográficas atualmente, escolhi trabalhar na proposta B.
A função proposta (grid_camtrap) tem o objetivo de facilitar a execução de algumas análises corriqueiras que têm que ser executadas por quem utiliza grades de armadilhas fotográficas (para marcação-recaptura, ocupação, etc). Essas análises incluem gráficos para visualização da grade de armadilhas fotográficas prevista e instalada em campo e a sobreposição das duas. Além disso, são calculadas a distância entre os pontos previstos e instalados em campo, a distância entre as armadilhas fotográficas instaladas, a média ± desvio padrão dessa distância, o cálculo da quantidade de dias amostrado por cada armadilha fotográfica e a quantidade de dias/armadilha total da amostragem.
A função também faz algumas análises exploratórias com os dados obtidos com as armadilhas fotográficas, como número de registros por espécie, número de armadilhas fotográficas por tipo de habitat (pode ser o tipo de habitat, como campo limpo, cerradão e silvicultura ou também poderiam ser diferenças nos ambientes amostrados, como trilha pré-existente, estrada, margem de rio, etc) e registro das espécies por tipo de habitat. Para executar a função, será necessário que o pesquisador dê os mesmos nomes às colunas da tabela, como o modelo abaixo, sendo que: X1,Y1 representam as coordenadas UTM dos pontos previstos, X2,Y2 são as coordenadas UTM em que as armadilhas fotográficas foram instaladas em campo, Date1 é a data de instalação da armadilha fotográfica e Date2 é a data de retirada da armadilha fotográfica do campo.
Armadilha | X1 | Y1 | X2 | Y2 | Date1 | Date2 | Habitat | Species |
---|---|---|---|---|---|---|---|---|
x | UTM | UTM | UTM | UTM | dd/mm/yyyy | dd/mm/yyyy | y | z |
dados <- read.table(file.choose(), header=T, sep=";", as.is=T) grid_camtrap <- function(dados) { x11() ## abre uma nova janela para visulizacao dos graficos par(mfrow=c(2,2)) ## muda o dispositivo grafico para 2X2 par(pty="s") ## deixa a area do grafico quadrada ## Passo 1. Grafico mostrando a localizacao em UTM da grade de armadilhas fotograficas programada (X1 e Y1 indicam as coordenadas UTM previstas)## plot(dados$X1, dados$Y1, xlab= "X programado", ylab= "Y programado", main="Grade de armadilhas \nfotográficas programada", pch=16) ## main indica o nome do grafico, \n indica a mudanca de linha, xlab e y lab indicam os nomes dos eixos e pch indica o tipo de simbolo que representara os dados no grafico ## Passo 2. Grafico mostrando a localizacao em UTM das armadilhas fotograficas colocadas em campo (representadas pela coluna X2, Y2)## plot(dados$X2, dados$Y2,xlab="X em campo", ylab="Y em campo", main="Grade de armadilhas \nfotográficas em campo", col="red",pch=23) ## col = "red" muda a cor do simbolo ## Passo 3. Juntando os graficos (localizacao programada das armadilhas X localizacao das armadilhas instaladas em campo)## plot(dados$X1, dados$Y1,xlab="X", ylab="Y",pch=16) par(new=T) ##Colocando as informacoes dos dois graficos em apenas um grafico## plot(dados$X2, dados$Y2,xlab="X", ylab="Y", main="Grade de armadilhas \nfotográficas programada \ne em campo", col="red",pch=23, xaxt="n",yaxt="n") ## xaxt e yaxt nao plotam as escalas dos eixos, ja que este sera um grafico em sobreposicao ao primeiro criado, antes de par (new=T) ## Passo 4. Calculo da distancia entre os pontos programados e os pontos em que as armadilhas fotograficas foram instaladas (em metros) dist_previsto_campo <- sqrt((dados$X2 - dados$X1)^2+(dados$Y2 - dados$Y1)^2) ## Passo 5. Calculo da media da distancia entre os pontos programados e os pontos em que as armadilhas fotograficas foram instaladas (em metros) avg_dist_previsto_campo <- mean(dist_previsto_campo) ## Passo 6. Calculo do Desvio Padrao da distancia entre os pontos programados e os pontos em que as armadilhas fotograficas foram instaladas (em metros) sd_dist_previsto_campo <- sd(dist_previsto_campo) ## Passo 7. Calculo da distancia entre as armadilhas fotograficas instaladas em campo (em metros) - utilizando os vizinhos mais proximos dist_vizinho_campo <- numeric(length(dados$Armadilha)) ## definindo classe como numeric (estipulando o numero de dados) nn <- numeric(length(dados$Armadilha)) ## nearest neighbour (definindo como classe numeric) d<- numeric(length(dados$Armadilha)) ## d e a distancia entre duas armadilhas fotograficas (e calculada utilizando por base o teorema de Pitagoras, representa a hipotenusa) for(i in 1:(length(dados$Armadilha))) ## repetir de 1 até o último dado da coluna armadilha { for(k in 1:(length(dados$Armadilha))) d[k]=sqrt((dados$X2[k]-dados$X2[i])^2+(dados$Y2[k]-dados$Y2[i])^2) ## calculo de d dist_vizinho_campo[i] <- min(d[-i]) ## calcula qual o valor minimo de d (qual e o vizinho mais proximo) nn[i] <- which(d==min(d[-i])) ## indica qual o ponto mais proximo para tracar a linha entre os pontos (passo 8) } ## Passo 8. Grafico mostrando os vizinhos mais proximos para cada armadilha fotografica plot(dados$X2, dados$Y2,xlab="X", ylab="Y", main="Distâncias entre armadilhas \nfotográficas em campo \n (menores distâncias)", col="red",pch=23) for(i in 1:(length(dados$Armadilha))) lines(c(dados$X2[i],dados$X2[nn[i]]),c(dados$Y2[i],dados$Y2[nn[i]])) ## traca a linha entre os vizinhos mais proximos ## Passo 9. Calcular a media entre as armadilhas fotograficas em campo avg_dist_camtrap_campo <- mean(dist_vizinho_campo) ## Passo 10. Calcular o desvio padrão entre as armadilhas fotograficas em campo sd_dist_camtrap_campo <- sd(dist_vizinho_campo) ## Passo 11. Calcular o numero de dias de amostragem para cada armadilha fotografica (matriz). Os dados de data tem de estar no formato dd/mm/yyyy.Date1 indica a data de instalacao da armadilha fotografica e Date2, a data de retirada da armadilha fotografica. data.instalacao <- as.Date (strptime(dados$Date1,format="%d/%m/%Y")) ## transformando a variavel Inst.date (data de instalacao da armadilha fotografica) em objeto da classe date class(data.instalacao) data.instalacao data.retirada <- as.Date(strptime(dados$Date2,format="%d/%m/%Y")) ## transformando a variavel Rem.date (data de remocao da armadilha fotografica) em objeto da classe date class(data.retirada) data.retirada dias_amostrados <- data.retirada - data.instalacao dias_amostrados ## Passo 12. Calcular o numero total de dias/armadilha dias_armadilha <- sum(dias_amostrados) ## Passo 13. Calculo da quantidade de registros por especie registro_sp <- table(dados$Species) registro_sp ## Passo 14. Calculo do numero de armadilhas fotograficas em cada tipo de habitat amostrado camtrap_habitats <- table(dados$Habitat) ## Passo 15. Calculo da quantidade de registros por especie por tipo de local amostrado (habitats diferentes ou locais com caracteristicas diferentes, como trilhas, estradas, silvicultura) registros_sp_habitats <- table(dados$Species,dados$Habitat) resulta <- (list(dist_previsto_campo, avg_dist_previsto_campo, sd_dist_previsto_campo, dist_vizinho_campo, avg_dist_camtrap_campo, sd_dist_camtrap_campo, dias_amostrados, dias_armadilha, registro_sp, camtrap_habitats, registros_sp_habitats)) print(resulta) } grid_camtrap(dados)
grid_camtrap R Documentation Análise para dados de grades de armadilhas fotográficas Description A função grid_camtrap realiza análises de dados coletados com uma grade de armadilhas fotográficas (armadilhas fotográficas dispostas a distâncias regulares). A função utiliza as localizações no sistema UTM previstas e as localizações no sistema UTM em que as armadilhas foram instaladas em campo para traçar gráficos: (1) das localizações previstas para as armadilhas fotográficas no planejamento da grade, (2) das localizações em que as armadilhas foram instaladas em campo, (3) de ambas localizações (previstas e em campo e (4) traça linhas ligando os vizinhos mais próximos em relação às armadilhas fotográficas instaladas em campo. Além disso, a função calcula: (1) a distância entre as localizações UTM programadas e as localizações em que as armadilhas foram instaladas em campo (matriz), (2) a média e desvio padrão da distância entre as localizações UTM previstas e as das armadilhas em campo, (3) a distância entre as armadilhas fotográficas instaladas em campo usando os vizinhos mais próximos (matriz), (4) a distância média e desvio padrão entre as armadilhas fográficas em campo (utilizando os vizinhos mais próximos), (5) o número de dias de amostragem para cada armadilha fotográfica, (6) o número total de dias da amostragem considerando todas armadilhas fotográficas (dias/armadilha), (7) a quantidade de registros por espécie, (8) a quantidade de armadilhas fotográficas dispostas em cada tipo de habitat amostrado, (9) a quantidade de registros por espécie em cada tipo de habitat. Usage grid_camtrap(dados) Arguments dados tabela importada em formato txt ou csv contendo dados coletados utilizando grade de armadilhas fotográficas. Tabela composta pelas colunas: Armadilha numeração/ nome atribuído a cada armadilha fotográfica X1 localizações UTM previstas para instalação das armadilhas fotográficas (leste/oeste) Y1 localizações UTM previstas para instalação das armadilhas fotográficas (norte/sul) X2 localizações UTM em que as armadilhas fotográficas foram instaladas em campo (leste/oeste) Y2 localizações UTM em que as armadilhas fotográficas foram instaladas em campo (norte/sul) Date1 data de instalação das armadilhas fotográficas (formato dd/mm/aaaa) Date2 data de retirada das armadilhas fotográficas do campo ou término da amostragem (formato dd/mm/aaaa) Habitat tipos de locais em que as armadilhas fotográficas foram instaladas Species nome das espécies registradas Details Tipo: função Versão: 1.1 Data: 17/05/2014 Value retornará os resultados das análises em uma lista (list): dist_previsto_campo distância em metros das localizações UTM previstas e em que as armadilhas fotográficas foram instaladas avg_dist_previsto_campo média das localizações UTM previstas e em que as armadilhas fotográficas foram instaladas (em metros) sd_dist_previsto_campo desvio padrão das localizações UTM previstas e em que as armadilhas fotográficas foram instaladas (em metros) dist_vizinho_campo distância em metros entre as armadilhas fotográficas instaladas em campo avg_dist_camtrap_campo média da distância entre as armadilhas fotográficas instaladas em campo (em metros) sd_dist_camtrap_campo devio padrão da distância entre as armadilhas fotográficas instaladas em campo (em metros) dias_amostrados número de dias amostrados por armadilha fotográfica (matriz) dias_armadilha número total de dias amostrados considerando todas as armadilhas fotográficas da grade (dias/armadilha) registro_sp número de registros por espécie camtrap_habitats número de armadilhas fotográficas por tipo de habitat registros_sp_habitats número de registros de cada espécie por tipo de hábitat Author(s) Lilian Bonjorne de Almeida <lilian.almeida@icmbio.gov.br> Examples dados Armadilha X1 Y1 X2 Y2 Date1 Date2 Habitat Species 1 358130 7421935 358158 7421930 01/01/2014 01/04/2014 habitat1 sp1 2 357845 7421535 357827 7421473 03/01/2014 05/04/2014 habitat2 sp2 3 357657 7421987 357608 7421954 08/01/2014 16/04/2014 habitat3 sp3 4 357372 7421615 357337 7421549 12/01/2014 04/04/2014 habitat1 sp1 5 358323 7421507 358241 7421447 18/01/2014 10/04/2014 habitat1 sp1 grid_camtrap(dados)