-
Notifications
You must be signed in to change notification settings - Fork 1
/
05-observacoes-no-espaco-e-no-tempo.Rmd
177 lines (142 loc) · 17.3 KB
/
05-observacoes-no-espaco-e-no-tempo.Rmd
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
# Observações no espaço e no tempo
Diversas aplicações requerem o conhecimento da localização das observações do solo no plano geográfico, na linha temporal, ou em ambos. Por exemplo, análises geoestatísticas e de séries temporais. Assim, mesmo que um determinado conjunto de dados não seja produzido com esse propósito, seu reúso futuro depende, em parte, do conhecimento das coordenadas espaciais, *x* e *y*, e temporal, *t*. No **febr**, essas informações são inseridas na tabela denominada *observacao*.
Além das coordenadas espaciais e temporais, a toda observação do solo estão vinculadas condições ambientais
específicas. Tais condições ambientais podem ser de maior ou menor interesse, controladas ou naturais,
determinantes ou auxiliares na explicação das características do solo. Estão incluídas aí informações sobre o
relevo local, o material de origem e a rocha subjacente, o tipo de uso da terra pretérito e presente, e assim
por diante. Quando registradas, tais informações são também inseridas na tabela *observacao*.
As observações espaço-temporais do solo também costumam ser acompanhadas por informações locais sobre o
próprio solo e que refletem sua relação com o ambiente. Tais informações expressam as características físicas,
químicas e (micro)biológicas do solo. Por exemplo, a condição de drenagem, a presença de pedregosidade e
rochosidade, a classificação taxonômica, a presença de contato lítico, e a própria profundidade do solo. Na
verdade, muitos conjuntos de dados do solo possuem apenas esse tipo de informação, geralmente quando gerados
em projeto de cunho mais exploratório, quando não são coletadas amostras das camadas do solo (Capítulo \@ref(camadas)). Assim como as informações sobre as condições ambientais, essas informações locais sobre o solo também são inseridas na tabela *observacao*.
Diferente da tabela *dataset*, que armazena os dados em linhas, a tabela *observacao* está organizada de
maneira a armazenar os dados em colunas. Assim, a cada observação do solo é dedicada uma linha exclusiva, e os
dados adicionados sequencialmente nas colunas. Como o número de observações do solo varia de conjunto de dados
para conjunto de dados, não há limite de linhas na tabela *observacao*. Da mesma forma, como os dados coletados
durante uma observação do solo podem ser muitos e diversos, não há imposição de limites quanto ao número máximo
de colunas. Apenas três requerimentos precisam ser atendidos. Primeiro, devem ser preenchidas todas as colunas
obrigatórias (destaque em vermelho) e, sempre que possível, todas as colunas recomendadas (destaque em
amarelo). Segundo, deve ser usado estilo de nomenclatura padronizado para as demais colunas opcionais (destaque
em verde). Por fim, enquanto a primeira linha da tabela *observacao* contém o nome das colunas, a segunda deve
ficar reservada para registrar as unidades de medida, por exemplo, para variáveis como a profundidade do solo.
As próximas seções descrevem a estrutura da tabela *observacao*.
## Identificação
Cada observação é identificada usando um código identificador exclusivo definido conforme a identificação usada no conjunto de dados de origem. Esse código identificador, informado na coluna `observacao_id`, é a única informação de preenchimento obrigatório na tabela *observacao*. Por se tratar de um código identificador exclusivo, um mesmo conjunto de dados não terá nunca um `observacao_id` repetido. Contudo, diferentes conjuntos de dados podem, e geralmente possuem, `observacao_id` iguais entre si.
Como se trata de um código de identificação, não são usados espaços ou caracteres especiais no `observacao_id`. Espaços são substituídos por um subtraço, `_`, ou traço, `-`. Caracteres especiais são substituídos pelo caractere correspondente simplificado, ou seja, `á` torna-se `a`, `ç` torna-se `c`, e assim por diante. Por exemplo, uma observação identificada no trabalho de origem como Perfil 01 será identificada no **febr** como `Perfil-01`.
No caso dos conjuntos de dados obtidos de outros repositórios ou bases de dados, como o SISB, reserva-se também uma coluna para armazenar o código identificador usado no repositório ou base de dados de origem (Tabela \@ref(tab:observacao-id)). Essa estratégia possibilita que, no futuro, e em havendo interesse por parte dos mantenedores desses repositórios e bases de dados, seja estabelecida comunicação direta com o **febr**. Assim, seria possível atualizar seus dados à medida que ajustes e correções nos dados forem sendo feitos no **febr**.
```{r, echo=FALSE}
versao <-
rbind(
c("observacao_id", "identificador exclusivo no conjunto de dados no **febr**"),
c("sisb_id", "identificador exclusivo no Sistema de Informação de Solos Brasileiros"),
c("ibge_id", "identificador exclusivo na base de dados do IBGE"),
c("esalq_id", "identificador exclusivo na base de dados da Esalq")
)
colnames(versao) <- c("**campo**", "**valor**")
pander(versao, caption = "(\\#tab:observacao-id) Campos usados para identificação das observações do solo.")
```
## Coordenada temporal {#tempo}
A data de observação do solo é um dos atributos que, junto das coordenadas espaciais, definem uma observação em um conjunto de dados. Tal informação é armazenada na coluna `observacao_data`, para o que é usado o formato numérico `dd-mm-aaaa` ou `dd/mm/aaaa`, ou seja, dois dígitos para o dia e mês, e quatro dígitos para o ano. Assim como para a data de publicação do conjunto de dados, a informação mais importante é o ano da observação. O valor para os casos em que a data de observação é desconhecida é `observacao_data = xx-xx-xxxx`. Contudo, uma estimativa pode ser feita a partir da data de publicação do conjunto de dados original.
Uma observação do solo realizada no mesmo local no espaço geográfico, mas em data diferente, constitui uma nova observação do solo. Isso requer a definição de uma nova `observacao_id`, a qual pode carregar alguma informação sobre a data de observação. Por exemplo, uma observação identificada no trabalho de origem como Perfil 01, observada nos anos de 2007 e 2008, pode ser identificada como `Perfil-01-2007` e `Perfil-01-2008`. Enquanto as coordenadas espaciais (Seção \@ref(coordenadas)) dessa observação serão as mesmas, as datas de observação serão diferentes.
## Coordenadas espaciais {#coordenadas}
A localização de uma observação do solo no espaço geográfico é especificada usando coordenadas espaciais, também conhecidas como coordenadas geográficas. Para isso são usados os cinco campos descritos na Tabela \@ref(tab:coordenadas).
```{r coordenadas, echo=FALSE}
cap <- "(\\#tab:coordenadas) Campos usados para especificar a localização espacial das observações do solo."
rbind(
c("coord_sistema", "sistema de referência de coordenadas"),
c("coord_x", "coordenada x ou longitude"),
c("coord_y", "coordenada y ou latitude"),
c("coord_precisao", "precisão das coordenadas espaciais"),
c("coord_fonte", "fonte das coordenadas espaciais")
) %>%
colNames(c("**campo**", "**valor**")) %>%
pander(caption = cap)
```
O primeiro campo, `coord_sistema`, refere-se ao sistema de referência de coordenadas (SRC) utilizado para o georreferenciamento das observações do solo. A especificação do SRC é fundamental para possibilitar o uso apropriado de dados espaciais em sistemas de informação geográfica (SIG), especialmente para fins de correlação e/ou cruzamento com outros dados espaciais. Tradicionalmente, a especificação do SRC é feita usando formato de texto legível por humanos. Por exemplo, WGS84 / zona UTM 23S, que identifica o datum geodético WGS84 e a zona 23 do hemisfério sul na projeção cartográfica UTM.
A identificação do SRC mostrada acima não é padronizada, o que dificulta a automatização da manipulação computacional dos conjuntos de dados. Assim, apesar de aceito para a entrada de dados no **febr**, esse tipo de identificação não é usado para o armazenamento dos dados no **febr**. Em vez disso, o **febr** adota os códigos padronizados e aceitos internacionalmente da European Petroleum Survey Group ([EPSG][epsg]), os quais são legíveis por humanos e por máquinas. Os códigos dos sistemas de referência de coordenadas geográficas e projetadas mais usados no Brasil são mostrados nas Tabelas \@ref(tab:geografica) e \@ref(tab:projetada).
[epsg]: http://www.spatialreference.org/ref/epsg/
```{r geografica, echo=FALSE}
cap <- "(\\#tab:geografica) Códigos EPSG dos sistemas de referência de coordenadas geográficas para o Brasil."
rbind(
c("EPSG:4326", "WGS84"),
c("EPSG:4225", "Córrego Alegre"),
c("EPSG:4618", "SAD69"),
c("EPSG:4674", "SIRGAS2000")
) %>%
colNames(names = c('**Código**', '**Definição**')) %>%
pander(caption = cap)
```
```{r projetada, echo=FALSE}
cap <- "(\\#tab:projetada) Códigos EPSG dos sistemas de referência de coordenadas projetadas para o Brasil."
rbind(
c("18N", "-", 29168, 32618, 31972),
c("18S", "-", 29188, 32718, 31978),
c("19N", "-", 29169, 32619, 31973),
c("19S", "-", 29189, 32719, 31979),
c("20N", "-", 29170, 32620, 31974),
c("20S", "-", 29190, 32720, 31980),
c("21S", 22521, 29191, 32721, 31981),
c("22S", 22522, 29192, 32722, 31982),
c("23S", 22523, 29193, 32723, 31983),
c("24S", 22524, 29194, 32724, 31984),
c("25S", 22525, 29195, 32725, 31985)
) %>%
colNames(
names = c('**Zona e hemisfério**', '**Córrego Alegre**', '**SAD69**', '**WGS84**', '**SIRGAS2000**')) %>%
pander(caption = cap)
```
Os valores das duas coordenadas espaciais, *x* e *y*, são especificadas usando os campos `coord_x` e `coord_y`, respectivamente. No **febr**, *x* é o mesmo que longitude, e *y* é o mesmo que latitude. A diferença fundamental entre as duas nomenclaturas é que, enquanto longitude e latitude referem-se a coordenadas geográficas, *x* e *y* referem-se a coordenadas projetadas. No caso das coordenadas geográficas, usa-se o formato decimal, sendo a unidade de medida o grau (°). Já para as coordenadas projetadas, a unidade de medida é o metro (m). Em ambos os casos, utiliza-se a vírgula como separador decimal, sendo esse o padrão da língua portuguesa.
Os dois últimos campos, `coord_precisao` e `coord_fonte`, servem para armazenar informações sobre a qualidade das coordenadas espaciais (Tabela \@ref(tab:coord-fonte)). O primeiro especifica a precisão (em metros) com que as coordenadas espaciais foram determinadas. Por exemplo, os equipamentos receptores de sinal do sistema de posicionamento global por satélite (GPS) mais populares costumam reportar precisão de 6-15 m, dependendo das condições locais e ambientais, bem como da configuração espacial da constelação de satélites. Enquanto isso, mapas topográficos na escala de 1:25 000, com coordenadas espaciais ao nível de segundo de arco, possuem, por definição, precisão de cerca de 30 m. Por fim, serviços de mapas online podem alcançar precisão similar aos equipamentos receptores de sinal GPS.
```{r, echo=FALSE}
cap <- "(\\#tab:coord-fonte) Códigos para definição da fonte das coordenadas espaciais."
rbind(
c("GPS", "aparelho GPS"),
c("MAPA", "mapa analógico ou digital"),
c("WEB", "serviço web como o Google Maps")
) %>%
colNames(names = c('**Código**', '**Definição**')) %>%
pander(caption = cap)
```
## Localização {#localizacao}
Além das coordenadas espaciais, no **febr**, a localização geográfica das observações do solo também é registrada usando a identificação do município (`municipio_id`), estado (`estado_id`) -- ou unidade federativa -- e país (`pais_id`) onde a observação do solo foi realizada (Tabela \@ref(tab:localizacao)). Como o **febr** trata apenas de conjuntos de dados produzidos no Brasil, usa-se o código ISO 3166-1 alpha-2 do Brasil, ou seja, `BR`. No caso do estado -- ou unidade federativa --, usa-se a abreviação da respectiva unidade federativa (UF). O nome do município é escrito por extenso, conforme encontrado na fonte.
```{r, echo=FALSE}
cap <- "(\\#tab:localizacao) Campos usados para descrever a localização das observações do solo."
rbind(
c("municipio_id", "nome do município"),
c("estado_id", "código do estado ou unidade federativa"),
c("pais_id", "código do país")
) %>%
colNames(c("**campo**", "**valor**")) %>%
pander(caption = cap)
```
## Amostragem {#amostragem}
Informações sobre a estratégia usada para observação e amostragem do solo são necessárias para decidir sobre vários aspectos operacionais/metodológicos posteriores. Por exemplo, a fusão de conjunto de dados e o método de inferência estatística. No **febr** essas informações são armazenadas em três campos (Tabela \@ref(tab:amostragem)). O primeiro deles, `amostra_tipo`, refere-se ao tipo de amostragem empregado, podendo ser simples -- uma única observação ou amostra coletada num determinado ponto, como no caso de um perfil do solo -- ou composta -- duas ou mais observações ou amostras coletadas em uma determinada área e posteriormente agregadas. O segundo campo, `amostra_quanti`, armazena o número de observações ou amostras, sendo assim principalmente útil no caso de observação ou amostragem do tipo composta. Por fim, a área amostral, `amostra_area`, que se refere ao tamanho da área usada para fazer a observação ou amostragem do solo, seja ela simples -- a área de uma trincheira para descrição de um perfil do solo costuma ser de 1 m^2^ -- ou composta.
```{r amostragem, echo=FALSE}
cap <- "(\\#tab:amostragem) Campos usados para descrever a estratégia de observação e amostragem do solo."
rbind(
c("amostra_tipo", "tipo de amostragem, simples ou composta"),
c("amostra_quanti", "número de sub-amostras"),
c("amostra_area", "área amostral")
) %>%
colNames(c("**campo**", "**valor**")) %>%
pander(caption = cap)
```
## Variáveis ambientais {#ambvars}
Diversas informações ambientais e locais sobre o solo podem ser armazenadas na tabela *observacao*. A mais comum delas é a classificação taxonômica do perfil do solo, registrada usando o campo `taxon_<sistema>_<ano>`, onde `<sistema>` identifica o sistema de classificação -- taxonomia -- utilizado para classificar a observação do solo, e `<ano>` identifica o ano de publicação do sistema de classificação. Para indicar o ano, usa-se o formato numérico `aaaa`, o mesmo usado para especificar a data da observação do solo. Já a identificação do sistema de classificação é feita usando os códigos padronizados mostrados na Tabela \@ref(tab:taxonomia). Assim, cabe ao usuário especificar o nome do campo `taxon_<sistema>_<ano>` de maneira a atender suas necessidades. Por exemplo, `taxon_sibcs_1999` refere-se à classificação taxonômica do solo conforme a edição do Sistema Brasileiro de Classificação do Solo publicada no ano de 1999.
```{r, echo=FALSE}
cap <- "(\\#tab:taxonomia) Códigos usados para especificação do sistema de classificação taxonômica do solo."
rbind(
c("fao", "Legend of the World Soil Map"),
c("sibcs", "Sistema Brasileiro de Classificação do Solo"),
c("st", "Soil Taxonomy"),
c("usc", "Universal Soil Classification"),
c("wrb", "World Reference Base for Soil Resources")
) %>%
colNames(names = c('**Código**', '**Definição**')) %>%
pander(caption = cap)
```
A estrutura usada para identificação dos campos destinados às variáveis ambientais reflete a grande flexibilidade do **febr**. Por exemplo, caso o mesmo perfil do solo tenha sido classificado usando mais de um sistema de classificação taxonômica, então basta o usuário adicionar tantas colunas quantas forem necessárias e nomeá-las usando o mesmo padrão de codificação `taxon_<sistema>_<ano>`. Ademais, caso um sistema de classificação taxonômica diferente daqueles mostrados na Tabela \@ref(tab:taxonomia) tenha sido usado, então basta definir o código identificador único mais apropriado para o mesmo. Uma vez os dados inseridos no **febr**, o novo código identificador passa a fazer parte do rol de padrões de codificação do **febr**.
O formato do valor usado para registrar as variáveis ambientais é determinado pelo tipo de variável ambiental. Por exemplo, no caso da classificação taxonômica, o valor registrado é do tipo texto, devendo respeitar os padrões estabelecidos pelo sistema de classificação taxonômica usado. Por exemplo, `taxon_sibcs_1999 = Latossolo Vermelho Distrófico típico`. Note que tanto espaços como caracteres especiais são mantidos.
Além da flexibilidade, a estrutura usada para identificação das variáveis ambientais visa auxiliar na verificação de possíveis inconsistências, bem como facilitar os processos de padronização e harmonização dos dados (mais no Capítulo \@ref(metadados)). Para que isso seja possível, a adoção de padrões de codificação -- como aqueles mostrados na Tabela \@ref(tab:taxonomia) -- é fundamental. No momento, por se tratar de uma variável bastante comum nos conjuntos de dados, apenas a classificação taxonômica possui uma padronização da codificação. A medida que novos conjuntos de dados forem sendo inseridos no **febr**, contando com novas variáveis ambientais e locais sobre o solo, então os respectivos padrões de codificação serão desenvolvidos. A ativa participação dos usuários do **febr** com sugestões é fundamental para que isso ocorra dentro do menor tempo possível.