Essa é uma revisão anterior do documento!


Relatório de discussão de problemas ligados ao banco do Saudavel

  1. Diversos problemas relatados ao Pedro
    • Decisões:
      1. Simone vai criar um banco light a partir do atual e ver se o problema persiste
      2. Fazer a “ duplicação” do layer armadilha via aRT e R ao invés de shape
  2. aparente problema na TV, com nome de variáveis, exportando para shape. Mesmo o .dbf mostra nome cortado. mistério: pq no aRT aparece correto na tabela depois de addShape()
  3. Inconsistência de dados de uma armadilha:
    • Durante as analises identificamos um problema com a armadilha: DI403 que aparentemente dever ser excluida do banco. Basicamente: existe dados (apenas 1 coleta e 3 NA's) para esta armadilha mas nao existem coordenadas.
> a geometria deste objeto nao esta no banco de dados. o layer possui apenas 564 pontos:
> Object of class aRTlayer
> Layer: "LAYER_ARMADILHAS"
> Database: "saudavel"
> Number of points: 564  <<<<<<<<<<<<<<<<<<<<<<<<<<<
> Projection Name: "UTM"
> Projection Datum: "SAD69"
> Tables:
>    "ARMADILHAS": static
>    "CARACTERISTICAS_LUGAR": dynattr
>    "COLETAS": dynattr
>    "media_layer_24": media
>
> no banco também esta assim:
> mysql> select count(*) from TE_POINTS_ARMADILHAS;
 | count(*) |
> +----------+
> |      564 |
> +----------+
> 1 row in set (0.00 sec)

> a terralib nao impede isso de ocorrer. isto me parece ser um problema de
> banco, o dado foi removido acidentalmente, ou talvez nao tenha sido sequer adicionado.
> evidencia: nesta tabela de geometria, a pesar dela possuir apenas 564
> elementos, o contador de ID é 669, o que significa que ja foram inseridos 669
> elementos, e, portanto, ja foram removidos 669-564=105 pontos da tabela. a
> chance de um erro ter ocorrido é relativamente alta, uma vez que o trabalho
> de inserir estes dados no banco é manual.
>> require(aRT)
>> con <- openConn()
>> db <- openDb(con,"saudavel", update=TRUE)
>> la <- openLayer(db, "LAYER_ARMADILHAS")
>>
>> ## para pontos recuperamos 564
>> pts <- getPoints(la)
>> dim(pts)  ## resposta: 564 e nao 565 como deveria ser...!!!
>> sum(pts$ID == "DI403")  ## nao aparece esta armadilha...
>>
>> ## mas na tabela vem 565 (como deveria ser!)
>> tb <- openTable(la, "COLETAS")
>> aed <- getData(tb)[c(2,3,9)]
>> dim(aed) ## note que aqui é 565
>> "DI403" %in% aed[,1]  ## e esta armadilha aparece!
>> with(aed, table(COD_ARMADILHA))["DI403"]
>> ## veja isto:
>>> arma <- split(aed, aed$COD)
>>> arma[["DI403"]]
>>        COD_ARMADILHA DATA_COLETA NRO_OVOS
>> 11087         DI403  2005-11-01      362
>> 11652         DI403  2005-11-29       NA
>> 12217         DI403  2005-12-27       NA
>> 12782         DI403  2006-01-24       NA

QR Code
QR Code projetos:dengue:problemasbd (generated for current page)