Intervalo de confiança dos dados rasterizados

8

Eu tenho dados raster que representam uma distribuição de probabilidade, ou seja, cada célula tem um valor de probabilidade (no meu caso, a probabilidade de um animal ser encontrado na célula), e todas as células somam 100% (eu sei com certeza o animal está dentro da extensão da minha varredura). Quero poder gerar dados vetoriais para valores de confiança. Por exemplo, a linha / polígono de 95% denota o limite em que estou 95% confiante de que encontrarei o animal.

Da mesma forma, se eu tiver uma estimativa de densidade do kernel, como gerar a linha / polígono de XX% que faz fronteira com a parte mais densa da varredura que contém XX% da população total?

Estou disposto a usar o ArcGIS, ou software de código aberto. Se não houver uma ferramenta para fazer isso para mim, qual é o algoritmo que posso implementar?

Regan Sarwas
fonte
As soluções Mathematica apareceram recentemente em mathematica.stackexchange.com/questions/20464 .
whuber

Respostas:

3

Confiança não é um conceito aplicável, embora seja superficialmente semelhante. A pergunta parece que você deseja identificar a menor região com uma probabilidade total de pelo menos 95%. Essa região pode ser obtida (pelo menos conceitualmente), classificando todas as probabilidades e acumulando-as da maior para a menor, até que a soma parcial seja igual ou superior a 95% e depois selecione as células correspondentes aos valores que foram acumulados. Isso leva a uma solução direta, como exemplificado por este exemplo de R (código aberto):

library(raster)
set.seed(17)                   # Seed a reproducible random sequence
nr <- 30                       # Number of rows                    
nc <- 50                       # Number of columns
#
# Create a zone raster for normalizing the probabilities.
#
zone <- raster(ncol=nc, nrow=nr)
zone[] <- 0
#
# Create a probability raster (for illustrating the algorithm later).
#
p <- raster(ncol=nc, nrow=nr)
p[] <- (1:(nc*nr) - 1/2) / (nc*nr) + rnorm(nc*nr, sd=0.5)
p <- abs(focal(p, ngb=5, run=mean))
z <- zonal(p, zone, stat='sum')
p <- p / z[[2]] # This normalizes p to sum to unity as required
#------------------------------------------------------------------------------#
#
# The algorithm begins here.
#
pvec <- sort(getValues(p), decreasing=TRUE) # The probabilities, sorted
d <- cumsum(pvec)                           # Cumulative probabilities
dpos <- d[d <= 0.95]                        # Position to stop
region <- p                                 # Initialize the output
region[p < pvec[length(dpos)]] <- NA        # Exclude the last 5% of the probability
plot(region)                                # Display the result

Aqui está a imagem resultante da região de probabilidade de 95% com as probabilidades originais mostradas em cores: elas somam pouco mais de 95%, por construção, e a eliminação mesmo do menor valor reduzirá a soma para menos de 95%. A área branca na parte superior inclui os 5% restantes da probabilidade fora desta região. O contorno desejado é o limite entre as células brancas e as células coloridas.

Resultado

O mesmo método funcionará em uma grade do KDE.

Não existe uma solução simples do ArcGIS para esse problema.

whuber
fonte
Ha ha, superficial descreve corretamente meu entendimento de probabilidade. Muito obrigado por a) interpretar corretamente minha pergunta mal formulada eb) fornecer uma resposta clara.
Regan Sarwas
0

No ArcGIS ...

  • Ferramentas de estatística espacial> Reclassificação> Reclassify Tool
    • Crie 2 métodos de reclassificação:
    • OldValues ​​= 0-94.99 | NewValues ​​= 0
      OldValues ​​= 95-100 | NewValues ​​= 1

Isso criará uma nova varredura com 2 valores, 0 = intervalo de confiança externo, 1 = intervalo de confiança interno de 95%.

  • Ferramentas de conversão> Da varredura> Ferramenta Raster para polígono
    • Entrada =
      Campo de varredura reclassificada = Valor

Isso criará um polígono vetorial com 2 FIDs, um com a forma do seu intervalo de confiança de 95% e o outro com a área de varredura restante. Eu sugeriria explorar a opção simplificar para ver quais resultados atenderiam melhor às suas necessidades.

Para sua informação, aplique o mesmo método para obter os polígonos para suas estimativas de densidade Kernal.

Michael Markieta
fonte
Talvez eu não tenha sido claro (não sou muito bom com probabilidade). Para reafirmar, o total dos valores em todas as minhas células é 1,0, portanto, com uma distribuição uniforme em uma grade de 100x100, cada célula teria um valor de 1/10000. Agora imagine que os valores das células variam de um número ligeiramente maior próximo ao centro a valores de zero próximo às bordas (ainda totalizando 1,0). Se eu começar a remover células com os menores valores, acabarei ficando com um total de 0,95. Como faço isso para que eu possa reclassificar como você sugeriu.
Regan Sarwas
Estranho, de qualquer entendimento do uso de rasters para exibir representação estatística de dados, seu valor de probabilidade (valor da célula) seria de 0 a 100 (ou, no seu caso, 0 a 1), e a distribuição desses valores (valores de célula) representaria uma distribuição normal.
Michael Markieta
Se for verdade, do que podemos reclassificar os dados usando o método sugerido acima, embora valores substitutig de 0,9499 e 0,95 para 94,99 e 95
Michael Markieta
1
Esta solução não reflete a grade descrita na pergunta. Pense na grade de entrada como representando uma distribuição de probabilidade bidimensional discreta em vez de ser uma "representação estatística de dados". Em casos práticos (redes de médio a grande porte, faixa de animais moderadamente bem distribuídos), a maioria das probabilidades será extremamente pequena, muito inferior a 95%; portanto, a reclassificação apenas apagará todas as informações: tudo passa a zero.
whuber