You are on page 1of 6

Rotinas para Anlises Geoestatsticas Utilizando a Linguagem R: um exemplo

com dados agro-ambientais


Lucas Venezian Povoa1, Rodrigo Lilla Manzione2 e Edson Cesar Wendland3
1

Graduando em Anlise de Sistemas, FATEC/Ourinhos, Av. Vitalina Marcusso, 1400 CEP: 19910-206
Ourinhos/SP, lucas.povoa@fatec.sp.gov.br, URL: http://www.lucasvenezian.orgfree.com
2
Eng. Agrnomo, UNESP/Ourinhos, Av. Vitalina Marcusso, 1500 CEP: 19910-206 Ourinhos/SP,
manzione@ourinhos.unesp.br
3
Eng. Civil, EESC/USP, Caixa Postal 359, CEP: 13560-970 So Carlos/SP, ew@sc.usp.br

Resumo - Este artigo apresenta anlises geoestatsticas em dados agro-ambientais utilizando a linguagem
R como ambiente para estatstica computacional e visualizao grfica. O objetivo foi descrever de maneira
simples e direta como utilizar um software livre e de domnio publico e alguns pacotes disponibilizados por
seus desenvolvedores e usurios para armazenar as informaes espaciais, o modo de import-las para o
ambiente R e os recursos mnimos para a execuo de anlises geoestatsticas. Entre as operaes
desenvolvidas esto a variografia, predio espacial utilizando krigagem ordinria e validao cruzada dos
resultados. Espera-se com isso encorajar a utilizao do R para anlises espaciais, uma vez que essa
linguagem um recurso completo, estvel, confivel e desenvolvida e aprimorada por renomados
pesquisadores na rea. As rotinas descritas podem ser reproduzidas para fins de mapeamento, agricultura
de preciso, levantamentos e inventrios, entre diversas outras aplicaes agro-ambientais.
Palavras-chave: variografia; krigagem; validao cruzada.
Routines to Geostatistics Analysis Using R Language: an example with agri-environmental data
Abstract - This paper presents geostatistical analysis on agro-ecological data using the R language as
environment for statistical computing and visualization. The aim was to describe in a simple and direct way
how to use and free and with public domain software and some packages available from developers and
users to storage spatial information, import it to R environment and the minimal resources for implementation
of geostatistical analysis. Among the operations carried out are variography, ordinary kriging and cross
validation of the results. We expect with this work encourage the use of the R language for spatial analysis,
since it is a complete, stable and reliable feature, developed and perfected by renowned researchers in this
field. The routines described here could be reproduced for different targets, like mapping, precision farming,
survey and inventory, among several other agro-ecological applications.
Key words: variography; kriging; cross-validation.
Introduo
R uma linguagem aberta e gratuita com a finalidade de resolver problemas grficos e de computao
estatstica, sendo uma implementao da linguagem S desenvolvida inicialmente por John Chambers, Rick
Becker e Allan Wilks dos Laboratrios Bell (R Development Core Team, 2008). A linguagem R fornece
padres e mtodos inovadores de analise estatstica, e devido a sua caracterstica de desenvolvimento
aberto (open source) garante um contnuo aprimoramento de bibliotecas e rotinas por inmeros
profissionais de diversos pontos do mundo. Ser uma ferramenta estvel e confivel fez com que milhares de
usurios aderissem ao R como software estatstico para anlises. A anlise de dados espaciais tambm
muito difundida em R, e tem ganhado um grande nmero de recursos nos ltimos anos. Especificamente
em geoestatstica, rotinas at ento disponveis em softwares comerciais e de alto valor no mercado so
disponibilizadas em diversas bibliotecas. Alm disso, o R dispes de funes especiais para exibir,
armazenar e organizar dados desse tipo. Contudo, a linguagem R por si s no possui artifcios para
distinguir coordenadas de qualquer outro tipo de dado numrico. Uma equipe de pesquisadores escreveram
um pacote denominado sp PEBESMA e BIVAND (PEBESMA; BIVAND, 2005) com classes e mtodos
especficos para dados espaciais, sendo esta biblioteca a matria-prima de ferramentas em R para
II Simpsio de Geoestatstica em Cincias Agrrias

ISSN: 2236-2118

processamento e anlise de dados dessa grandeza. BIVAND et al. (2008) apresentam uma relao de
pacotes disponveis que dependem ou importam o pacote sp direta ou indiretamente e outros que utilizam
ou sugerem utilizar o pacote sp sem declar-lo na descrio do pacote. Podemos citar os pacotes (ou
bibliotecas) maptools, rgdal, splancs, geoR, gstat, spsurvey, trip, entre muitos outros.
Desse modo, o objetivo deste trabalho foi descrever rotinas geoestatsticas em R que fossem aplicveis
a dados agro-ambientais, perfazendo variografia, krigagem ordinria e validao cruzada dos resultados a
partir de dados pontuais.
Material e Mtodos
Para a execuo das operaes de geoestatstica foi utilizado o programa R verso 2.10.0 (R
Development Core Team, 2008) e os pacotes sp (PEBESMA; BIVAND, 2005), gstat (PEBESMA, 2004) e
lattice (SARKAR, 2010). Os dados utilizados nos processos so pontos georreferenciados referentes a
posio de poos de monitoramento de nveis freticos em uma bacia hidrogrfica em rea de recarga do
Sistema Aquifero Guarani (SAG) em Brotas (SP), a bacia do Ribeiro da Ona. So ao todo 20 poos
georreferenciados, coordenadas planas UTM fuso 23 s. Tambm esto disponveis dados vetoriais
representando o limite da bacia e um modelo digital de terreno (MDT) em formato raster (WENDLAND et al.,
2007). Os dados relativos aos poos foram dispostos da seguinte forma: a primeira linha representa o nome
dos atributos, cada coluna separada por uma tabulao (\t) e cada linha posterior a primeira representa o
conjunto de dados de um determinado poo (Tabela 1).
Tabela 1. Dados pontuais de alturas do nvel dgua e respectivas cotas altimtricas
X
194592,92
194632,80
197699,38
198326,23
197210,52
196917,51
197003,34
197588,00
195367,02
195377,76
195362,31
195354,38
196798,22
196776,36
197154,03
197154,15
194592,92
194632,80
197699,38
198326,23

Y
7537198,83
7537211,47
7543585,49
7544977,48
7544401,75
7545107,64
7545176,91
7545341,91
7544827,80
7544717,14
7544627,54
7544445,75
7545255,82
7545347,75
7545539,79
7545533,64
7537198,83
7537211,47
7543585,49
7544977,48

Z
-17,45
-5,42
-26,38
-18,97
-25,30
-9,80
-6,62
-7,63
-5,49
-12,43
-15,95
-16,20
-2,89
-0,45
-1,93
-0,99
-17,45
-5,42
-26,38
-18,97

E
753
754
748
736
731
715
714
706
707
712
717
720
694
687
691
690
753
754
748
736

Z=altura do nvel dgua (metros); E = elevao (metros)

Essa tabela pode ser copiada e colada diretamente em algum aplicativo do tipo bloco de notas, gravada
como formato texto (.txt) e lida e importada pela funo read.table do R. necessrio nomear a tabela, no
caso ALF (alturas de lenol fretico). Em seguida a funo coordinates transforma os dados carregados em
dados do tipo SpatialPointsDataFrame, definindo as coordenados x e y dos pontos. Os dados da bacia
hidrogrfica (limite e MDT) foram organizados seguindo o conjunto de regras do formato ASCII. Os
processos executados para importao dessas informaes foram atravs da funo read.asciigrid que
carrega os dados referentes a bacia e os transforma em um objeto do tipo SpatialGridDataFrame. Atribuir a
II Simpsio de Geoestatstica em Cincias Agrrias

ISSN: 2236-2118

todos os dados a classe Spatial, que um pr-requisito para a execuo de anlises espaciais no R.
Aps essa tarefa foram aplicadas funes do pacote gstat para anlises geoestatsticas. As funes
variogram, vgm e fit.variogram, foram utilizadas com a finalidade de gerar e ajustar um modelo terico ao
variograma. A funo krige foi utilizada para gerar uma superfcie estimada e a varincia dessas predies.
A validao dos dados se deu atravs da funo krige.cv. A visualizao dos resultados atribuda s
funes spplot e print.
Resultados e Discusso
Os resultados so expostos em vrios fragmentos com a finalidade de melhor explorar cada ponto do
script desenvolvido, e aps cada ponto explorado exibido o seu resultado. O elemento >no incio de cada
linha do cdigo R deve ser descartado, uma vez que representa incio de linha. Portanto, o cdigo abaixo
tem a finalidade de carregar os dados espaciais em objetos R e torn-los tipos derivados da classe Spatial:
> ALF = read.table( "pocos.txt", header=T );
> coordinates(WTD) = ~ X + Y;
> MDT = read.asciigrid("mdt.txt", plot.image = TRUE, colname = "E");
> spplot(MDT["E"], scales=list( draw=T ), sp.layout=list("sp.points", ALF,
pch="+") );
O cdigo acima alm de carregar os dados exibe um mapa com a representao do limite e altitudes da
bacia hidrogrfica junto aos pontos dos poos, como ilustra a Figura 1.

Figura 1. Visualizao dos dados de poos (cruzes) sobre o modelo digital do terreno (metros) da Bacia do
Ribeiro da Ona.
O trecho a seguir ser refere variografia e executa respectivamente o clculo do variograma a partir de
uma amostra de dados, ajusta um modelo terico ao variograma amostral a partir de valores informados ou
mesmo realiza um ajuste automtico.
II Simpsio de Geoestatstica em Cincias Agrrias

ISSN: 2236-2118

>
>
>
>
>

variograma = variogram( Z ~ 1, ALF, cutoff=4000, width=500 );


modelo = vgm( 95, "Sph", 1800, nug = 0.5);
modelo_ajustado = fit.variogram(variograma, model = variograma);
print( plot( variograma, model = modelo ), split=c(1,1,2,1), more=T);
print( plot( variograma, model = modelo_ajustado ), split=c(2,1,2,1), more=F);

Primeiro deve-se definir as dimenses do variograma. Na funo variogram, cutoff refere-se ao campo
amostral do variograma e width a largura do passo definido. A seguir executa-se o ajuste a sentimento. Na
funo vgm so definidos primeiro o patamar do variograma (95), seguido pelo tipo de modelo terico
(esfrico/Sph), alcance (1800) e efeito pepita (nug). Ainda possvel optar por um ajuste automtico, por
mnimos quadrados. Os resultados com os distintos modelos gerados so exibidos na Figura 2.

Figura 2. Variogramas utilizando o resultado da funo vgm como modelo (a) e utilizando o resultado da
funo fit.variogram para ajuste automtico do modelo (b).

Por fim, essa ltima poro do cdigo executa a interpolao dos dados por krigagem ordinria e realiza
a validao dos resultados atravs da tcnica de validao cruzada. Na funo krige o primeiro parmetro
define a varivel a ser interpolada no arquivo indicado (segundo parmetro) e os parmetros seguintes
definem respectivamente o grid (clulas da malha) da bacia para executar a interpolao (no caso MDT) e o
modelo do variograma usado nessa interpolao (model). Esse grid necessrio para que em cada clula o
interpolador resolva o sistema de krigagem. Por fim, nmax define o nmero mximo de pares considerados
na vizinhana para interpolao. A Tabela 2 exibe os resultados da validao cruzada, reorganizados como
distribuio de freqncia e a Figura 3 ilustra os resultados da interpolao dos dados por krigagem
ordinria.
>
>
>
>

OK = krige(Z ~ 1, ALF, MDT, model = modelo_ajustado, nmax=40);


CV.OK = krige.cv(Z ~ 1, ALF, modelo_ajustado, verbose=F)
print( spplot(OK["var1.pred"], xlab="(a)"), split=c( 1, 1, 2, 1 ), more=T );
print( spplot(OK["var1.var"], xlab="(b)"), split=c( 2, 1, 2, 1 ), more=F );

II Simpsio de Geoestatstica em Cincias Agrrias

ISSN: 2236-2118

Tabela 2. Validao cruzada para a krigagem ordinria realizadas para os dados de alturas do lenol
fretico
Pred
Mnimo

-17,89

1 Quartil
2 Quartil

Var

Obs

Res

Zscore

1,93

-26,38

-11,72

-4,28

-14,50

8,44

-16,51

-3,32

-0,73

-10,54

13,92

-8,72

-0,36

-0,19

3 Quartil

-5,16

32,94

-4,79

1,29

0,37

Mximo

-1,04

98,54

-0,45

11,94

4,36

Mdia

-9,94

27,77

-12,10

-0,93

-0,07

5,86

31,54

8,58

5,84

1,72

DesvPad

DesvPad=desvio padro; Pred=valor predito; Var=varincia da predio;


Obs=valor observado; Res=resduos; Zscore=(pred-obs)/var

Figura 3. Resultados da funo krige: predio de alturas de lenol fretico (metros) a partir da interpolao
por krigagem ordinria (a) e a varincia da krigagem ordinria (b).
Nossa proposta foi expor os recursos mnimos necessrios para anlises geoestatsticas em R. Para os
resultados obtidos foram necessrio conhecimentos bsicos de geoestatstica na interpretao das funes
disponveis para realizao dos procedimentos listados. Todas as funes possuem documentao
disponvel na ajuda dos pacotes carregados (help), onde um conhecimento bsico de ingls se faz
necessrio para compreender os textos. Aqui foram utilizadas apenas algumas partes de cada funo, que
podem ser mais complexas, com mais parmetros, conforme o grau de conhecimento em R e em
geoestatstica que o analista tenha para utiliz-las. Espera-se assim encorajar novos usurios na utilizao
da linguagem R para anlises espaciais, uma vez que um recurso completo, estvel, confivel e tambm
gratuito, desenvolvido e aprimorado por renomados pesquisadores. As rotinas descritas aqui podem ser
entendidas para anlises mais complexas e avanadas como tcnicas de krigagem indicativa, universal ou
mesmo simulao seqencial gaussiana, que no esto implementadas em todos os softwares
geoestatsticos disponveis no mercado. Alm disso, possvel desenvolver suas prprias rotinas e
bibliotecas em casos especficos definidos pelos usurios.
II Simpsio de Geoestatstica em Cincias Agrrias

ISSN: 2236-2118

Concluses
O programa R se mostra uma alternativa vivel, em relao a softwares comerciais, para anlises
espaciais e geoestatsticas, uma vez que importa, armazena, analisa e permite a visualizao dos
resultados. Para execuo de tarefas atravs de seus pacotes e bibliotecas necessrio um conhecimento
intermedirio de geoestatstica, uma vez que no se trata de um software intuitivo onde o usurio guiado
atravs de janelas a cada passo da anlise. As rotinas descritas podem ser reproduzidas para fins de
mapeamento, agricultura de preciso, levantamentos e inventrios, entre diversas outras aplicaes agroambientais.
Referncias
BIVAND, R. S.; PEBESMA, E. J.; GMEZ-RUBIO, V. Applied Spatial Data Analysis with R. Nova York:
Springer, 2008. 374 p.
PEBESMA, E. J. Multivariable geostatistics in S: the gstat package. Computers & Geosciences, v. 30, p.
683-691, 2004.
PEBESMA, E. J.; BIVAND, R. S. Classes and methods for spatial data in R. R News, v. 5, n. 2, p. 913,
2005.
R DEVELOPMENT CORE TEAM. R: A Language and Environment for Statistical Computing. R Foundation
for Statistical Computing, 2008. Disponivel em: <http://www.r-project.org>. Acesso em: 29 Novembro
2010.
SARKAR, D. lattice: Lattice Graphics. R package version 0.18-3, 2010. Disponivel em: <http://CRAN.Rproject.org/package=lattice>. Acesso em: 10 Dezembro 2010.
WENDLAND, E, BARRETO, C. E. A. G., GOMES, L. H. Water balance in the Guarani Aquifer outcrop zone
based on hydrogeologic monitoring. Journal of Hydrology, v. 342, p. 261-269, 2007.

II Simpsio de Geoestatstica em Cincias Agrrias

ISSN: 2236-2118

You might also like