# data[].attributes.headline
TAREFA 2 - PRODUÇÃO DE MAPA DE OBSERVAÇÕES

# data[].attributes.subject
TAREFA 2 - PRODUÇÃO DE MAPA DE OBSERVAÇÕES

# data[].attributes.body
Objetivo da tarefa: produção de mapas com a distribuição dos registos de observações analisados e retidos, incluindo a distribuição geográfica da espécie.

Ficheiros/informação necessária para os mapas:

1. Mapa mundo base, com o layout de todos os países (ficheiro shapefile)
2. Informação da distribuição da espécie (ficheiro shapefile)
3. Tabela com localização de observações e respetivas coordenadas geográficas (ficheiro de texto).

Para produzir os mapas, vamos trabalhar com o QGIS (https://www.qgis.org/en/site/) - um software de sistemas de informação geográfica.

1. Instalação de software
2. Obter o ficheiro com o mapa mundo
a) O ficheiro está disponível a partir da página web: https://thematicmapping.org/downloads/world_borders.php - ficheiro: TM_WORLD_BORDERS-0.3.zip
3. Obter ficheiro com a distribuição geográfica de cada espécie
a) Os ficheiros foram obtidos a partir do site da IUCN Red List (https://www.iucnredlist.org/) - para fazer download dos dados disponíveis, foi necessário ter uma conta no site e dar uma indicação do fim para o qual pretendemos usar este material (exemplo: para investigação, educação, etc.).
b) Para obter o ficheiro através do site, tivemos que começar por pesquisar o nome da espécie e abrir a respetiva página:

Na opção lateral “Download”, escolher a opção “Range data - Polygons (SHP)”.

Preencher a informação solicitada sobre o uso dos dados.

Quando o dowload for aprovado, recebem um email com indicação de onde podem fazer o download.

4. Preparação do ficheiro com as coordenadas geográficas de cada observação
a) Abrimos o ficheiro excel onde temos estado a analisar as observações e começamos por filtrar os dados:

Filtramos a coluna “gbifID” para valores de cor “verde” - ou seja, escondemos todas as ocorrências que foram descartadas pela nossa análise.

Filtramos a coluna “hasCoordinate” para mostrar apenas valores “TRUE” - ou seja, escondemos todas as observações para as quais não tinhamos coordenadas geográficas.

b) Escondemos as colunas necessárias de forma a manter apenas as colunas gbifID, decimalLatitude, decimalLongitude, cor do pelo. Copiamos os visíveis para uma nova folha no mesmo ficheiro Excel.

c) Guardamos a nova folha como ficheiro de texto, com um nome diferente.

5. Produção dos mapas no QGIS:
a) Começamos por abrir o software e guardar um projeto em branco, onde íamos fazer todo o trabalho.

b) Extraímos o ficheiro zip com o mapa mundo (TM_WOLRD_NORDER-0.3.zip) e fazemos a importação do ficheiro para o QGIS (selecionar o ficheiro com extensão .shp).

Para a importação, selecionamos o tipo de ficheiro como “vetor”.

Podemos explorar o aspeto visual do mapa no menu “Camadas”, clicando com o botão direito do rato e selecionando “Propriedades”.

c) Extraímos o ficheiro zip com a distribuição geográfica das amostras e fizemos a importação do ficheiro para o QGIS (selecionar o ficheiro com extensão .shp).

Para a importação, selecionamos o tipo de ficheiro como “vetor”.

Podemos explorar o aspeto visual da distribuição no menu “Camadas”, clicando com o botão direito do rato e selecionando “Propriedades”.

d) Importamos o ficheiro de texto onde guardamos as informações geográficas das amostras que vamos colocar no mapa.

Para a importação, selecionamos o tipo de ficheiro como “texto delimitado” — ao fazer a importação, confirmar na secção “definição da geometria” que os campos X e Y correspondem, respetivamente, as colunas com informação da Longitude e Latitude.

Verificamos na pré-visualização da camada que os dados estão a ser bem interpretados (as colunas estão corretas, etc.)

e) Começamos por verificar se os pontos de observação caíam todos dentro da distribuição da espécie, removendo aqueles que não o faziam (no Painel de Ferramentas de Processamento —> Sobreposição de Vetor —> Interseção OU Seleção vetorial —> Extrair por localização).

Guardamos o ficheiro originado como ficheiro permanente (se não o fizermos, perdemos o ficheiro quando fecharmos o programa).

Nas propriedades da camada, no sub-menu “Simbologia”, alteramos os símbolos para “Categorizado”, de forma a podermos dar diferentes cores aos pontos representativos de animais com cores de pelo diferente.

f) Para guardar o mapa, no menu “Projeto”, escolhemos “Nova composição de impressão”

Adicionamos o mapa em que estivemos a trabalhar (”Adicionar Mapa”) e podemos ajustar a sua visualização (”mover conteúdo do item”).

Podíamos adicionar outros objetos, como uma legenda, uma escala, etc.

g) Por fim, exportamos a composição, no formato mais adequado ao nosso propósito (como imagem, pdf, etc.). No menu do cabeçalho, selecionamos a
opção "Composição" > "Guardar como imagem".

# data[].attributes.headline
TAREFA 3 - RECOLHA E PROCESSAMENTO DE VARIÁVEIS CLIMÁTICAS

# data[].attributes.subject
TAREFA 3 - RECOLHA E PROCESSAMENTO DE VARIÁVEIS CLIMÁTICAS

# data[].attributes.body
Objetivo: Recolha de informação de variáveis climáticas/ambientais/etc. e respetivo processamento no QGIS, para posterior modelação.

Ficheiros/informação necessária para o processamento das variáveis:
1. Ficheiros com a distribuição das variáveis a utilizar (ficheiro geotiff)
2. Informação da distribuição da espécie (ficheiro shapefile)

Para obter informações sobre variáveis ambientais e climáticas, vamos recorrer a duas bases de dados WorldClim (https://www.worldclim.org/) e CHELSA (https://chelsa-climate.org/), mas existem muitas mais que podem ser utilizadas.

1. Obter dados do WorldClim
a) Usamos os dados que estão na pasta “Historical” - correspondem a dados que são designados com “históricos” e correspondem ao período 1970-2000; podem ser considerados representativos do momento de observação das nossas espécies.
b) Nota importante: para a Elevação/Altitude, o período histórico não é relevante.
2. Obter dados do Chelsa: fizemoso download de ficheiros correspondentes a diferentes variáveis bioclimáticas e à cobertura de neve.

BIO2 - Mean Diurnal Temperature Range (Amplitude da Temperatura Média Diária).

BIO3 - Isothermality (Isotermalidade da Amplitude Diária de Temperaturas - comparação da amplitude diária vs amplitude anual da temperature)

BIO4 - Temperature Seasonality (Sazonalidade da Temperatura)

BIO7 - Annual Range of Air Temperature (Amplitude Anual da Temperatura do Ar)

BIO12 - Annual precipitation Amount (Quantidade Anual de Precipitação)

BIO15 - Precipitation Seasonality (Sazonalidade da Precipitação)

SCD - Snow Cover Days (Nr de Dias com Cobertura de Neve)

3. Processamento dos ficheiros com o QGIS
a) Começamos por abrir o software e guardar um projeto em branco, onde vamos fazer todo o trabalho. Usamos um projeto diferente daquele que foi usado para a produção do mapa com as observações da vossa espécie.
b) Importamos para o QGIS o ficheiro com a distribuição geográfica das espécies (selecionar o ficheiro com extensão .shp).
c) Importamos - à vez - o ficheiro tiff correspondente a cada uma das variáveis com que vamos trabalhar.
d) Fizemos o corte dos mapas de cada variável de acordo com a distribuição geográfica da espécies que estivemos a trabalhar. No Painel de Ferramentas de Processamento —> GDAL —> Recortar raster pela camada de máscara
e) Repetimos este processo para cada uma das 7 variáveis listadas no ponto 2. destas guidelines, assim como o ficheiro da Elevação obtido do WorldClim (ponto 1).

f) Depois de termos os ficheiros modificados, apagamos os ficheiros originais por uma questão de poupança de espaço.

# data[].attributes.attachment_link.description
Get access to files anywhere through secure cloud storage and file backup for your photos, videos, files and more with Google Drive.

# data[].attributes.headline
TAREFA 4 - Selecionar variáveis independentes e construir mapas de distribuição atual de fenótipos

# data[].attributes.subject
TAREFA 4 - Selecionar variáveis independentes e construir mapas de distribuição atual de fenótipos

# data[].attributes.body
Objetivo da tarefa: analisar os dados das variáveis climáticas que foram anteriormente processados e selecionar variáveis independentes. Utilizar as variáveis selecionadas para produzir um modelo de probabilidades da distribuição atual dos fenótipos.

Ficheiros necessários:

Ficheiro de texto com as listagem final de observações processadas, com o respetivo fenótipo (cor de inverno) e as coordenadas de latitude e longitude (resultado das sessões 1-3).

Ficheiros das variáveis climáticas processadas para a distribuição de cada espécie (resultado da sessão 5) com a distribuição das variáveis a utilizar (ficheiro geotiff)

1. Análise de variáveis climáticas e seleção de variáveis independentes:
a) Para este primeiro momento, usamos o ficheiro de código processing_climatic_variables.R
b) Aplicamos o código disponibilizado aos dados de cada grupo durante a aula
Os principais pontos que este código cobre foram:
b1) Importação, visualização e verificação dos ficheiros das variáveis climáticas e do ficheiro com a listagem das observações das espécies.
b2) Extração da informação de cada variável climática para as coordenadas geográficas nas quais temos observações registadas.
b3) Analisar a correlação entre variáveis climáticas com base nos extraídos para cada um dos pontos geográficos com observações validadas.
b4) Seleção das variáveis independentes que usamos na modelação dos nossos mapas da distribuição atual dos fenótipos. A seleção será informada por dois pontos:

a correlação estimada entre cada par de variáveis (mantendo apenas variáveis que não ultrapassam um determinado limite de correlação)

a importância de cada variável para a explicação das observações registadas dos fenótipos em análise (ou seja, quando temos duas variáveis correlacionadas e descartamos uma, manter aquela que é mais informativa sobre a probabilidade de observar um certo fenótipo)

2. Modelação da probabilidade da distribuição atual dos fenótipos
a) Para este segundo momento, usamos o ficheiro de código predictions_current_pheno_distribution.R
b) Usamos apenas as variáveis climáticas independentes selecionadas no ponto anterior.
c) Aplicamos o código disponibilizado aos dados de cada grupo durante a aula
Os principais pontos que este código cobre foram:
c1) Importação e verificação dos ficheiros das variáveis climáticas e do ficheiro com a listagem das observações das espécies.
c2) Seleção das variáveis climáticas necessárias para a análise, com base no ponto anterior
c3) Produção de um modelo de probabilidade de distribuição de fenótipos com base em todas as variáveis climáticas que foram selecionadas como independentes, ou seja:

Aplicamos um modelo matemático que estimou a significância da correlação entre a distribuição dos fenótipos dada pelos dados das observações e as variações de cada variável climática.

Para cada variável, o modelo indicou se este se encontrava muito ou pouco correlacionada com a distribuição dos fenótipos (exemplo: se a temperatura é sempre significativamente mais baixa nos locais onde há animais brancos no inverno e mais alta onde são castanhos ou se não existe uma correlação clara).

c4) Depois do modelo completo estar produzido e identificadas as variáveis significativamente correlacionadas com o fenótipo, testamos - com base no modelo completo - se há um modelo mais simplificado que explica igualmente bem a distribuição dos fenótipos, sem incluir variáveis pouco informativas (ou seja, aquelas que são pouco ou nada associadas ao fenótipo).
c5) Utilizando o modelo de correlação entre variáveis climáticas e o fenótipo que gerámos, assim como a informação das variáveis climáticas ao longo de toda a distribuição da espécie, projetamos para toda a distribuição (mesmo para os pontos nos quais não temos nenhuma observação registada), qual a probabilidade do animal ser branco ou castanho no inverno.

O resultado desta projeção foi guardado no ficheiro raster (formato geoTiff - extensão .tiff) que podemos usar no QGIS para produzir um mapa da distribuição atual dos fenótipos.

Também guardamos o resultado da modelação que geramos com a função plot() do R - que foi uma previsualização do mapa tiff.

3. Produção de uma imagem final com o mapa de probabilidades da distrbuição atual dos fenótipos:

# data[].attributes.headline
TAREFA 5 - Mapas de distribuição futura de fenótipos

# data[].attributes.subject
TAREFA 5 - Mapas de distribuição futura de fenótipos

# data[].attributes.body
Guidelines para a tarefa: Utilizar as projeções futuras das variáveis previamente usadas para modelar a distribuição atual (presente) das espécies modelos para produzir um modelo de probabilidades da distrubição futura dos fenótipos.

1. Obter dados do Chelsa: vamos fazer o download de ficheiros correspondentes a diferentes variáveis bioclimáticas e à cobertura de neve, na sua projeção futura segundo dois modelos climáticos distintos, para o período de tempo de 1971-2100 (daqui a sensivelmente 50 anos). Os ficheiros estavam no formato tiff georeferenciado.

Usamos projeções para dois cenários climáticos futuros (podemos ler mais sobre estes e outros cenários desenvolvidos, aqui: https://www.carbonbrief.org/explainer-how-shared-socioeconomic-pathways-explore-future-climate-change/):

Cenário SSP1-RCP2.6 —> um cenário mais otimista, que assume um caminho socioeconómico (SSP1) guiado por uma mudança global no sentido da sustentabilidade, assente num desenvolvimento social e económico inclusivo e que respeita as barreiras ambientais. Combina o SSP1 com um cenário de emissão de carbono mais estrito (RCP2.6), cujo objetivo é manter o aquecimento global abaixo dos 2ºC.

Cenário SSP5-RCP8.5 —> um cenário mais pessimista, que assume um caminho socioeconómico (SSP5) guiado pelo investimento em mercados competitivos, para a rápida produção de progresso tecnológico e para o desenvolvimento humano como meios para um desenvolvimento sustentável, mantendo-se, inicialmente, uma exploração abundante dos combustíveis fósseis. Combina o SSP5 com um cenário de emissões de carbono pessimista (RCP8.5), compatível com aquecimento global até 5ºC.

1d) Para fazer o download dos dados, no site https://chelsa-climate.org/downloads/ selecionamos a versão 2.1 dos dados (versão mais atual). Dentro da pasta “Climatologies”, abrimos a sub-pasta “2071-2100”, que contém os dados para o período de tempo que vamos considerar representativo do futuro. Dentro desta pasta, na sub-pasta “GFDL-ESM4”, escolhemos as pastas “ssp126” ou “ssp585”, para cada um dos modelos acima. Nestas, na pasta “bio”, encontramos os dados que nos interessavam. Indo linha a linha, conseguimos identificar quais as variáveis que nos interessava obter.

2. Processamento dos ficheiros com o QGIS
2a) Começamos por abrir o software e guardar um projeto em branco, onde vamos fazer todo o trabalho.
2b) Importamos para o QGIS o ficheiro com a distribuição geográfica da espécie (selecionar o ficheiro com extensão .shp). Para a importação, selecionamos o tipo de ficheiro como “vetor”.
2c) Importamos - - o ficheiro tiff correspondente a cada uma das variáveis com que trabalhamos .Para a importação, selecionamos o tipo de ficheiro como “raster”.
2d) Fizmeos o corte dos mapas de cada variável de acordo com a distribuição geográfica da espécie modelo. No Painel de Ferramentas de Processamento —> GDAL —> Recortar raster pela camada de máscara:

Definimos como camada de entrada o ficheiro da variável climática e como camada de máscara o ficheiro com a distribuição da espécie;

Definimos o nível de compressão do ficheiro como “Low compression”;

Definimos a localização onde guardamos e o nome do ficheiro - variavel_climatica_modelo_futuro_nome_da_especie.tif (exemplo: bio2_ssp126_mustela_nivalis.tif). É muito importante que soubessemos onde os ficheiros estavam guardados, uma vez que íamos precisar deles no passo seguinte.

2e) Repetimos este processo para cada uma das variáveis de interesse para as vossas espécies. Guardamos em pastas diferentes os ficheiros referentes a cada modelo climático futuro (exemplo: pastas “modelo_ssp126” e “modelo_ssp585”). Se as vossas variáveis de relevo incluíssem a elevação, usamos a mesma informação que usamos para o modelo de distribuição atual dos fenótipos, a qual já foi processada na sessão 5.
2f) Depois de termos os ficheiros modificados, apagamos os ficheiros originais por uma questão de poupança de espaço.

3. Modelação da probabilidade da distribuição futura dos fenótipos
3a) Para este momento, usamos o ficheiro de código
3b) Usamos apenas as variáveis climáticas retidas no modelo final da distribuição atual e processadas no ponto anterior.
3c) Aplicamos o código disponibilizado aos dados de cada grupo durante a aula. Os principais pontos que este código cobre são:

Importação e verificação dos ficheiros das variáveis climáticas e do ficheiro com a listagem das observações das espécies.

Seleção das variáveis climáticas necessárias para a análise, com base no ponto anterior

Produção de um modelo de correlação da distribuição dos fenótipos com as variáveis climáticas com base nos dados climáticos atuais (presente) - o modelo final incluiu apenas uma parte das variáveis inicialmente selecionadas como independentes, que foram as que melhor se correlacionaram com a distribuição das observações que processámos.

Utilizando o modelo de correlação entre variáveis climáticas e o fenótipo que gerámos, assim como a informação das variáveis climáticas ao longo de toda a distribuição da espécie, projetamos para toda a distribuição (mesmo para os pontos nos quais não temos nenhuma observação registada), qual a probabilidade do animal ser branco ou castanho no inverno em cada um dos modelos climáticos futuros

O resultado desta projeção foi guardado no ficheiro raster (formato geoTiff - extensão .tiff) que usamos no QGIS para produzir um mapa da distribuição atual dos fenótipos.

Também guardamos o resultado da modelação que gerarmos com a função plot() do R - que será uma pre-visualização do mapa tiff.

4. Produção de uma imagem final com o mapa de probabilidades da distribuição futura dos fenótipos
Usamos o QGIS e os mapas em formato geoTiff gerados no ponto anterior para produzir imagens finais com a probabilidade da distribuição futura dos fenótipos de inverno alternativos, em diferentes cenários climáticos.
4a) Para isso, abrimos o mapa guardado no QGIS, fazendo a importação com o tipo de ficheiro “raster”
4b) Nas propriedades da camada, no sub-menu “Simbologia”, alteramos as cores do mapa para uma rampa de cores que vá do castanho até branco, conforme são os nossos fenótipos alternativos. Começamos por escolher o tipo de render “Banda única de cor falsa”. Na opção “Rampa de cores”, escolhemos “Criar nova rampa de cores” e usamos o tipo “Gradiente”. Por fim, definimos a cor 1 como branco e a cor 2 como castanho, ou seja, os extremos da nossa rampa de cores.
4c) Para dar contexto visual da distribuição da espécie no mapa mundo, acrescentamos ao nosso mapa as fronteiras do mundo, através do ficheiro TM_WOLRD_NORDER-0.3.zip, fazendo a importação do ficheiro para o QGIS (selecionar o ficheiro com extensão .shp).

Para a importação, selecionamos o tipo de ficheiro como “vetor”.

Podemos explorar o aspeto visual do mapa no menu “Camadas”, clicando com o botão direito do rato e selecionando “Propriedades”.

4d) De seguida, criamos a imagem final através da criação de uma nova composição de impressão. No menu “Projeto”, escolhemos “Nova composição de impressão”

Adicionamos o mapa em que estivemos a trabalhar (”Adicionar Mapa”) e podemos ajustar a sua visualização (”mover conteúdo do item”).

Devíamos adicionar uma legenda que explique aquilo que está a ser observado no mapa.

4e) Por fim, exportamos a composição, no formato mais adequado ao nosso propósito (como imagem, pdf, etc.).

# data[].attributes.body
Depois de vários meses, finalmente conseguimos encerrar este projeto.
Consideramos que foi um estudo complicado, onde muitas vezes tivemos de voltar atrás e analisar novamente todas as ocorrências, correr códigos no Excel e mapas que não correram tão bem devidos a diversos pequenos erros. A parte mais difícil de todo este processo foi trabalhar no Excel e em programas de software que não conhecíamos e que eram muito pouco intuitivos. Contudo, o arminho aos poucos começou a fazer parte na nossa vida e hoje já temos conversas sobre a espécie e deparamo-nos a falar sobre esta com a nossa família...sentimos que realmente conseguimos aprender muito não só no ramo da biologia mas como o da estatística e informática. Temos também de agradecer ao João e à Inês que nos ajudaram semana após semana a obter resultados e com os quais criamos uma boa ligação.

# data[].attributes.headline
TAREFA 1 - RECOLHA DE DADOS DE OCORRÊNCIA DAS ESPÉCIES

# data[].attributes.subject
TAREFA 1 - RECOLHA DE DADOS DE OCORRÊNCIA DAS ESPÉCIES

# data[].attributes.body
Objetivo da tarefa: recolher informação sobre registos de observações (ou seja, de ocorrências) das espécies em estudos usando bases de dados públicas. Idealmente, vamos tentar recolher entre 50 a 100 ocorrências para cada espécie.

Critérios a cumprir: cada uma das ocorrências deve ter, cumulativamente, todas as informações listadas abaixo:

1. Local da observação (idealmente, com coordenadas geográficas)
2. Data da observação (datas de inverno - dezembro a fevereiro)
3. Fotografia da observação (para validação do fenótipo; neste caso, da cor do pelo no inverno)

Numa fase inicial, vamos trabalhar com o GBIF (https://www.gbif.org/) como local para recolha de dados:

1. Pesquisa de ocorrências: no website, no separador “Occurences” das opções de pesquisa, filtramos as ocorrências para:
a) o nome científico da espécie (todos se encontram listados nos slides da tarefa 1)
b) o media type (ter imagem associada ao registo)
c) o mês (dezembro, janeiro, fevereiro)

2. Download dos dados: nos resultados da pesquisa, na opção “Download”, utilizamos o formato “Darwin Core Archive”.
3. Abrir e converter o ficheiro das ocorrências: começamos por copiar o ficheiro que descarregamos para um local à nossa escolha no computado.
4. Selecionar a informação relevante da tabela
5. Todas as colunas listadas no ponto anterior e que mantiveram no documento, podem ser importantes para fases posteriores da análise. No entanto, para a avaliação que vamos fazer agora de cada ocorrência, muita dessa informação não é necessária
6. Analisar cada entrada uma a uma e verificar se pode ser utilizada para o projeto ou não

# data[].attributes.headline
TAREFA 5 - Mapas de distribuição futura de fenótipos

# data[].attributes.subject
TAREFA 5 - Mapas de distribuição futura de fenótipos

# data[].attributes.body
Previsão menos otimista