1 Die Sprache R und die R-Bibliothek für räumliche Extrapolation 1. Einige Extrapolationspakete in...

Preview:

Citation preview

1

Die Sprache R und die R-Bibliothek für räumliche ExtrapolationDie Sprache R und die R-Bibliothek für räumliche Extrapolation

1. Einige Extrapolationspakete in R:

2. Beispiele von Extrapolationspaketen

2

1- Einige Extrapolationspakete in R:

• adapt multidimensionale , numerische Integration. adaptive Quadrature bis zu 20 dimensional

• deldir Delaunay Triangulation and Dirichlet (Voronoi) Tesselation

• fields Tools für räumliche Datensammlungen und Programme für Kurven- und Funktionen-Anpassung.

• gafit Generische Algorithmen Zur Kurvenanpassungen

• geoR Funktionen für geostatistiche Datenanalyse

• grasper Verallgemeinerte Analyse der Regression und räumliche Vorhersagen in R

3

• gss allgemeine Glättung von Splines• iswr Einführung in die Statistik in R• msm Multistate Markov models in continuous time• muhaz Paket zum Erzeugen einer glatten Schätzung der Zufallsfunktion für kritische Werte• odesolve Gewöhnliche Differentialgleichungen• Random fields Simulation and Analysis of Random Fields• spatstat Simulation von 2 dimensionalen Punktmodellen• splanes Spatials and Space-time Point Pattern Analysis• tseries Time series analysis and computational finance.

4

Aufruf:

2-1 Das Paket Akima

Anwendung: cubic spline extrapolation

Hinweis:

Die Installation eines Pakets unter R erfolgt wie folgt:

Paket herunterladen und

• unter Windows:im {R-Home}/library -Verzeichnis kopieren• unter Linux /Unix: R INSTALL Paket.tar• alternativ R starten und install.package(‘Paket‘) eingeben

2. Beispiele von Extrapolationspaketen

• Ergebnis = interp(x,y,z)• Oder mit zusätzlichen Parametern interp(x,y,z,xo,yo,ncp,extrap), interp.new(...), interp.old(...)

5

benötigte Eingaben

• X Ein Vektor mit der X-Koordinate der

Meßpunkte• Y Ein Vektor mit der Y-Koordinate der

Meßpunkte• Z Die gemessenen Werte

• X0 X-Koordinaten des Ausgabe-Gitters

• Y0 Y-Koordinaten des Ausgabe-Gitters

• Ncp Anzahl der zusätzlichen Punkte, die in der Berechnung der partiellen Ableitung bei jedem Punkt benutzt werden soll

• Extrap Sollen nicht definierte Werte ersetzt werden?

6

das boolesche Modell:

Tatsächliche Werte

> werte = read.table('test0.dat')> werte V1 V2 V31 78 0 12 92 0 13 53 2 04 118 2 15 180 2 06 28 5 07 172 5 08 196 5 09 56 6 010 92 6 111 178 6 012 0 7 013 124 7 1...398 117 194 1399 133 194 1400 174 194 0401 26 195 1402 0 196 1403 2 196 1404 51 196 0405 144 196 1406 155 196 1407 25 197 1408 29 197 1409 97 197 1410 55 198 1

Meßorte

Implementierung:

7

> # Bibliothek laden> library(akima) > # Funktion vom Paket aufrufen und Extrapolation durchführen> # die x,y und z-Koordinaten wurden früher ausgelesen und in ‘werte‘ > # gespeichert> bild =interp.new(werte$V1,werte$V2,werte$V3,extrap=TRUE)> # Bild anzeigen> image(bild,main='geschätzte Werte')

Originalbild

8

># ein anderes Fenster öffnen> windows()> image(a)> contour(a,add=TRUE ,main='Darstellung mit isolinien')

Originalbild

9

2-2 das Paket Fields

- Funktion Tps

Anwendung: thin plate spline fitting

wobei

Aufruf: Ergebnis = Tps(M,z)

• M Matrix mit den Meßstellen• z die Meßwerten sind.

10

> library(fields)> tabelle = read.table('test0.dat')> M = matrix(nc=2,nr=410)> M[,1]=tabelle$V1;M[,2]=tabelle$V2> z=tabelle$V3> bild = Tps(M,z)># Anzeigen>surface(bild,type='I',main='thin plate splines regression')

Implementierung:

Originalbild

11

-Funktion stats Berechnet die allgemeinen Statistiken eines Datensatzes

Aufruf: stats(x) wobei x ein Vektor , eine Matrix, oder eine Liste mit den zu bearbeitenden Daten ist.

> test = matrix( rnorm(40),nc=4)

> test

[,1] [,2] [,3] [,4] [1,] 0.8558990 0.78164733 -0.3399095 -1.25745506 [2,] -0.7450166 -2.19926569 2.0638275 4.03476790 [3,] -0.4670831 -0.35056298 -0.0682312 0.02454136 [4,] -0.2473589 -1.17434882 -1.7119517 0.05066576 [5,] 0.7765930 -0.56373543 0.5910227 -0.06191312 [6,] 0.9452108 0.62275970 1.4570585 -0.34027899 [7,] -1.8537570 0.99369978 0.9913790 -0.77783609 [8,] 0.2235473 -0.74028294 -0.7828707 1.14223477 [9,] -0.3107069 -0.03890155 -2.4991293 -0.37005791[10,] 0.4786146 -1.10437317 -0.4329951 -0.28446861

> stats(test) [,1] [,2] [,3] [,4]N 10.00000000 10.0000000 10.00000000 10.00000000mean -0.03440577 -0.3773364 -0.07317997 0.21602000Std.Dev. 0.87328546 0.9993411 1.40467400 1.47739582min -1.85375698 -2.1992657 -2.49912925 -1.25745506Q1 -0.42798903 -1.0133506 -0.69540179 -0.36261318

median -0.01190584 -0.4571492 -0.20407034 -0.17319087Q3 0.70209839 0.4573444 0.89128990 0.04413466max 0.94521081 0.9936998 2.06382752 4.03476790

missing values 0.00000000 0.0000000 0.00000000 0.00000000

12

2-3 das Paket spatstat

bechäftigt sich mit der räumlichen Statistik

• rMatClust Erzeugt ein zufälliges Punktmodell mit dem Matterncluster prozess Aufruf: rMatClust(lambda, r, mu, win = owin(c(0,1),c(0,1))) Parameter: Lambda : Intensity of the Poisson process of cluster centres. r: Radius parameter of the clusters.

mu: Mean number of points per cluster.

win: Window in which to simulate the pattern.

> library(spatstat)>test = rMatClust(100, 0.05, mu=0.4, win=owin(c(0,5),c(0,5)))> plot(test,main=‚Matternclusterprozess')

13

rpoispp

Erzeugt ein zufälliges Punktmodell mit dem homogenen und

nicht homogenen Poisson prozess

Aufruf:

rpoispp(lambda, max, win, ...)

Parameter:

lambda: Intensity of the Poisson process. Either a single positive number, or a `function(x,y, ...)'.

max: An upper bound for the value of `lambda(x,y)', if `lambda' is a function.

win: Window in which to simulate the pattern. > pp <- rpoispp(100, win=owin(c(0,10),c(0,10)))> plot(pp,main='rpoispp')

14

DokumentationDokumentation

Außerdem gibt es mittels dem ‘Sjava’ Interface jetzt die Möglichkeit, eine Anbindung von der Sprache java nach R (und umgekehrt ) zu schaffen.Damit kann man z.B. von R aus Graphischen Oberflächen (mittels Java GUIs)darstellen, oder R -Funktionen in einem Java Programm ausführen

• Information über die Sprache R und die verfügbare Pakete findet man unter www.r-project.org ,• Informationen über das Java-Interface für R findet man unter www.omegahat.org

Recommended