Beispiele von Extrapolations

Werbung
Die Sprache R und die R-Bibliothek für räumliche Extrapolation
1. Einige Extrapolationspakete in R:
2. Beispiele von Extrapolationspaketen
1
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 Kurvenund Funktionen-Anpassung.
• gafit
Generische Algorithmen Zur Kurvenanpassungen
• geoR
Funktionen für geostatistiche Datenanalyse
• grasper
Verallgemeinerte Analyse der Regression und räumliche Vorhersagen in R
2
• 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.
3
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
2-1 Das Paket Akima
Anwendung: cubic spline extrapolation
Aufruf:
• Ergebnis = interp(x,y,z)
• Oder mit zusätzlichen Parametern
interp(x,y,z,xo,yo,ncp,extrap),
interp.new(...), interp.old(...)
4
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?
5
Implementierung:
> werte = read.table('test0.dat')
> werte
1
2
3
4
5
6
7
8
9
10
11
12
13
...
398
399
400
401
402
403
404
405
406
407
408
409
410
V1
V2
78
0
92
0
53
2
118 2
180 2
28
5
172 5
196 5
56
6
92
6
178 6
0
7
124 7
V3
1
1
0
1
0
0
0
0
0
1
0
0
1
117
133
174
26
0
2
51
144
155
25
29
97
55
1
1
0
1
1
1
0
1
1
1
1
1
1
194
194
194
195
196
196
196
196
196
197
197
197
198
Meßorte
Tatsächliche Werte
das boolesche Modell:
6
> # 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
7
># ein anderes Fenster öffnen
> windows()
> image(a)
> contour(a,add=TRUE ,main='Darstellung mit isolinien')
Originalbild
8
2-2 das Paket Fields
- Funktion Tps
Anwendung: thin plate spline fitting
Aufruf:
Ergebnis = Tps(M,z)
wobei
•M
Matrix mit den Meßstellen
•z
die Meßwerten sind.
9
Implementierung:
> 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')
Originalbild
10
-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.00000000
mean
-0.03440577 -0.3773364 -0.07317997 0.21602000
Std.Dev.
0.87328546 0.9993411 1.40467400 1.47739582
min
-1.85375698 -2.1992657 -2.49912925 -1.25745506
Q1
-0.42798903 -1.0133506 -0.69540179 -0.36261318
median
-0.01190584 -0.4571492 -0.20407034 -0.17319087
Q3
0.70209839 0.4573444 0.89128990 0.04413466
max
0.94521081 0.9936998 2.06382752 4.03476790
missing values 0.00000000 0.0000000 0.00000000 0.00000000
11
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')
12
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')
13
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
Dokumentation
• 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
14
Herunterladen