STATISTISK ANALYS AV KOMPLEXA DATA SPATIALA DATA Mattias Villani Statistik Institutionen för Datavetenskap Linköpings Universitet MATTIAS VILLANI (STATISTIK, LIU) SPATIALA DATA 1 / 21 TRE TYPER AV SPATIALA DATA Spatiala data: position och avstånd har betydelse. Tre typer av spatiala data: Geostatistiska data (Mätstationer) Areal data (Bildpixlar) Punktmönsterdata (Fågelskådning) Mer generellt: spatiala mätningar över tid: tempo-spatiala data. Ex: Meteorologiska mätningar. Inom delmomentet: Geostatistiska och lite areal data. MATTIAS VILLANI (STATISTIK, LIU) SPATIALA DATA 3 / 21 MOMENTETS INNEHÅLL Introduktion till spatiala data Visualisering av spatiala data Geostatistiska data: Interpolation, Variogram och Kriging Areal data: Spatiala autoregressionsmodeller. MATTIAS VILLANI (STATISTIK, LIU) SPATIALA DATA 2 / 21 GEOSTATISTISKA DATA Y (s) är en slumpmässig vektor observerad vid positionen s D. Positionerna s1, s2,..., sn är fixa. Mätningarna vid positionerna Y (s1), Y (s2),..., Y (sn) är slumpmässiga. D är ofta en delmängd av R 2. Longitud och latitud. Exempel 1: Temperatur och nederbörd i min trädgård vid en given tidpunkt. Exempel 2: Mängd olja vid olika borrningsstationer. Exempel 3: Huspriser. MATTIAS VILLANI (STATISTIK, LIU) SPATIALA DATA 4 / 21
MEUSE RIVER DATA - ZINC CONCENTRATION MATTIAS VILLANI (STATISTIK, LIU) SPATIALA DATA 5 / 21 KOMMUNALSKATT 2012 MATTIAS VILLANI (STATISTIK, LIU) SPATIALA DATA 7 / 21 AREAL DATA D är fortfarande en fix delmängd, men partitionerad i arealenheter. En mätning i varje area. Exempel 1: Jordbruksexperiment. Exempel 2: Bildanalys. Röntgen. Exempel 3: Huspriser på kommunnivå. Areal data kallas också lattice data. MATTIAS VILLANI (STATISTIK, LIU) SPATIALA DATA 6 / 21 FMRI BILDER AV HJÄRNAKTIVITET MATTIAS VILLANI (STATISTIK, LIU) SPATIALA DATA 8 / 21
PUNKTMÖNSTERDATA Positionerna s1, s2,..., sn är slumpmässiga. Punktprocesser. Y (s1), Y (s2),..., Y (sn) är fixa som indikerar att en viss händelse inträffat vid si. Exempel 1: Positioner av viss trädsort. Exempel 2: Sjukdomsutbrott. Exempel 3: Brottsplatser. Klustring ofta viktigt. Tenderar vissa djurarter att befinna sig inom samma område? Olika områden (revir)? Attraction/repulsion. Kovariatinformation vid de slumpmässiga positionerna: marked point pattern. Ex: brottsstyp, fågelstorlek, trädomkrets. MATTIAS VILLANI (STATISTIK, LIU) SPATIALA DATA 9 / 21 INTERPOLATION AV SPATIALA DATA Vi har observerat Z (s1), Z (s2),..., Z (sn) vid n fixa positioner. Vi vill beräkna anpassningen Ẑ (s0) i en ny punkt s0. Interpolation viktat med inversa avståndet: Ẑ (s0) = n i=1 w(si, s0)z (si ) n i=1 w(si, s0) där w(si, s0) = si s0 p library(gstat); idwout <- idw(zinc ~ 1, meuse, meuse.grid, idp = 2) image(idwout) ritar upp den interpolerade ytan. MATTIAS VILLANI (STATISTIK, LIU) SPATIALA DATA 11 / 21 SPATIALA DATA I R Paketet sp är baspaketet med spatiala datatyper. Objekt för att rita upp spatiala data: punkt, linje, polygon, grid och pixel. coordinates(datamatris) <- dinakoordinater [dinakoordinater är en matris med två kolumner innehållande longitud och latitud] datamatris blir ett objekt av typen SpatialPointsDataFrame. Alternativ: funktionen SpatialPointsDataFrame(). llcrs <- CRS("+proj=longlat +ellps=wgs84") definerar det traditionella longitud-latitude koordinatsystemet. library(maps); maps( world, sweden ) ritar upp en Sverigekarta. gridobjekt <- as(spatialdatamatris, "SpatialPixels") Gör om matrisen SpatialDataMatris med punkter till en grid/pixlar. MATTIAS VILLANI (STATISTIK, LIU) SPATIALA DATA 10 / 21 INTERPOLATION MED INVERSA AVSTÅND - MEUSE DATA MATTIAS VILLANI (STATISTIK, LIU) SPATIALA DATA 12 / 21
VARIOGRAM Spatial utökning av tidsserieanalysens autokorrelationsfunktion. Stationäritet. Process Z (s) = m + e(s) där m är väntevärdet och e(s) är spatialt brus. Alternativt Z (s) = X β + e(s) Semivariogram γ(h) = 1 2 E [Z (s) Z (s + h)]2 där h är en vektor. Variogram = 2γ(h). Relation till kovariansfunktionen C (h)=cov[y (s + h), Y (s)]: γ(h)=2[c (0) C (h)] MATTIAS VILLANI (STATISTIK, LIU) SPATIALA DATA 13 / 21 SAMPELVARIOGRAMMET Problematiskt att skatta variogrammet eftersom vi kan ha inga eller få datapunkter som just har avståndet h. Låt I1 = [0, h1), I2 = [h1, h2),..., Im = [hm 1, hm) vara en partitionering av intervallet [0, hm) där hm är en övre gräns. Momentskattning av variogrammet: ˆγ(Ij) = 1 2Nh N h [Z (si ) Z (si + h)] i=1 för alla h Ij. library(gstat); plot(variogram(log(zinc) ~ 1, meuse)) library(gstat); plot(variogram(log(zinc) ~ sqrt(dist), meuse)) library(gstat); plot(variogram(log(zinc) ~ 1, meuse, alpha = c(0,45,90,135))) MATTIAS VILLANI (STATISTIK, LIU) SPATIALA DATA 15 / 21 VARIOGRAM, FORTS Spatial korrelation beror endast på avståndsvektorn h = si sj mellan två punkter och inte på punkternas positioner. Isotropisk korrelation: vektorn h kan ersättas med dess längd h = h. γ( h) = γ(h) och γ(0) = 0. Nugget: ofta antas att γ(0 + ) = lim h 0 + γ(h) = τ 2 > 0. Går dock inte att skatta utan upprepade observationer vid samma position. MATTIAS VILLANI (STATISTIK, LIU) SPATIALA DATA 14 / 21 MODELLER FÖR ISOTROPISKA VARIOGRAM Linjär Sfärisk { τ 2 + σ 2 h om h > 0 0 om h = 0 { τ 2 + σ 2 } om h 1/φ τ 2 + σ 2 3φh 2 1 2 φ3 h 3 om 0 h 1/φ 0 Powered exponential 0 < p 2 (Exponential p = 1, Gaussisk p = 2) { τ 2 + σ 2 [1 exp( φh p )] om h > 0 0 om h = 0 Matérn { τ 2 + σ 2 [ 1 (2 νhφ) ν 2 ν 1 Γ(ν) K ν(2 νhφ) ] om h > 0 0 om h = 0 MATTIAS VILLANI (STATISTIK, LIU) SPATIALA DATA 16 / 21
NUGGET, SILL OCH RANGE Exempel: sfäriskt variogram } { τ 2 + σ 2 om h 1/φ τ 2 + σ 2 3φh 2 1 2 φ3 h 3 om 0 h 1/φ 0 Nugget: γ(0 + ) = lim h 0 + γ(h) = τ 2 > 0 Sill: limh γ(h) = τ 2 + σ 2 Partial sill: Sill - Nugget =σ 2 Range: h-värdet där γ(h) först når sitt maximum: 1/φ. MATTIAS VILLANI (STATISTIK, LIU) SPATIALA DATA 17 / 21 SPATIAL PREDIKTION - KRIGING Vi har observationer Z (s1),..., Z (sn) och vill prediktera Z (s0), Z-värdet vid en ny position s0. Vi har kovariater vid varje position: X = (x(s1),..., x(sn)) och x(s0). Rimlig prediktor: Ẑ (s0) är ett viktat medelvärde av värdena vid närliggande positioner. Bästa linjära väntevärdesriktiga prediktorn Ẑ (s0) = x(s0) ˆβ + v V 1 ( Z (s) X ˆβ ) där Z (s) = (Z (s1),..., Z (sn)), V är kovariansmatrisen för Z (s) och v är kovariansvektorn innehållande kovarianserna mellan Z (s0) och Z (s), och ˆβ = ( X V 1 X ) 1 X V 1 Z (s) är den vanliga GLS-skattningen. MATTIAS VILLANI (STATISTIK, LIU) SPATIALA DATA 19 / 21 SKATTNING AV PARAMETRISKA VARIOGRAM Ickelinjär viktad minsta kvadrat (startvärden viktiga) p wj [γ(h) ˆγ(h)] 2 j=1 Variogrammodeller i R: vgm(psill, model, range, nugget) Exempel: vgm(1, Sph, 300, 1) library(gstat); samplevariogram <- variogram(log(zinc) ~ sqrt(dist), meuse) fit.variogram(samplevariogram, vgm(1, "Sph", 800, 1)) Alternativt: eyeball statistics. Prova olika parametervärdet tills dess parametriskt variogram anpassar sampelvariogrammet. library(geor); varioeye <- eyefit(variog(as.geodata(meuse["zinc"]), max.dist = 1500)); variofit <- as.vgm.variomodel(varioeye[[1]]) Fungerar inte i RStudio. Kör vanlig R. MATTIAS VILLANI (STATISTIK, LIU) SPATIALA DATA 18 / 21 SPATIAL PREDIKTION - KRIGING, FORTS. Prediktionsvarians Var ( Ẑ (s0) ) = Var (Z (s0)) v V 1 v + ( x(s0) v V 1 X ) ( X V 1 X ) 1 ( x(s 0) v V 1 X ) Universal kriging. Ordinary kriging: endast intercept i regressionsytan. krige(log(zinc) ~ sqrt(dist), meuse, meuse.grid, fittedsphvariogram) MATTIAS VILLANI (STATISTIK, LIU) SPATIALA DATA 20 / 21
KRIGING - MEUSE DATA MATTIAS VILLANI (STATISTIK, LIU) SPATIALA DATA 21 / 21