Índice
- O Curso R
-
- Tutoriais
-
- Apostila
-
- 6. Testes de Hipótese (em preparação!)
- Exercícios
-
- Material de Apoio
-
- Área dos Alunos
-
- Cursos Anteriores
-
IBUSP
Outras Insitutições
Linques
Visitantes
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)