Dynamisierung von Eingabedateien
Der Benutzer wählt 2 oder mehrere SIKURS-Eingabedateien (z.B. strb2001.csv, strb2005.csv, strb2010.csv). Das Programm berechnet dann die dazwischen liegenden Dateien (im Beispiel strb2002.csv, strb2003.csv, strb2004.csv, strb2006.csv, strb2007.csv, strb2008.csv, strb2009.csv) so, dass jede Altersgruppe als lineare oder Spline-Interpolation der Stutzpunkte berechnet wird.
Die Dateien durfen fur die Indices auch Ausdrucke wie z.B. 1..$NTYS enthalten.
Bei 2 Stutzpunkten sind lineare und Spline-Interpolation identisch, bei 3 und mehr Stutzpunkten werden bei der linearen Interpolation die Stutzpunkte durch Gerade verbunden, bei Spline-Interpolation mit einer möglichst glatten Kurve.
Stracklatte ist die deutsche Übersetzung von Spline, sie ist eine biegsame hölzerne Latte, die im Schiffsbau um Stutzpunkte (Nägel) gebogen wird, so dass eine glatte Kurve entsteht.
Programmtechnisch werden Polynome dritten Grades so aneinandergestuckelt, dass die Anschlußstellen und deren ersten beiden Ableitungen stetig sind. Beim hier eingesetzten naturlichen Spline (freier Rand) ist die Krummung am Rand geich Null.
Die Auswahl der Eingabedateien erfolgt in einem Dateiauswahlmenu. Um mehrere Dateien auszuwählen, muss man die <Strg>-Taste gedruckt halten und mit der linken Maustaste mehrere Dateien auswählen.
Dynamisiere eine Datei mit Jahr in Spalte 1 durch lineare- oder Spline-Interpolation.
eckgeb, eckgem, eckle, eckreg, eckstrb, ecktyp, neubaub, neubauzu, saldvol, wegvol, zuvol
Beispiel Eckwert Lebenserwartung eckle:
#Jahr;Typ;BG;GG;Lebenserwartung 2010;1;1;1;70 2010;1;1;2;80 2030;1;1;1;73 2030;1;1;2;84
Die Eingabedatei darf auch symbolische Indices enthalten, z.B.:
#Jahr;Typ;BG;GG;Lebenserwartung 2010;1..$NTYS;1..$NBG;1;70 2010;1..$NTYS;1..$NBG;2;80 2030;1..$NTYS;1..$NBG;1;73 2030;1..$NTYS;1..$NBG;2;84
Auswahl einer csv-Datei und Wahl der Parameter
1 | Zeitachse | z.B. 1 für Jahr oder -2 für Altersgruppe |
---|---|---|
Schlüssel | 2 3: eigene Grafik für jeden Wert von Spalte 2 (z.B. Bevölkerungsgruppe) und Spalte 3 (z.B. Geschlechtsgruppe) | |
-1 | y-Achse | z.B. -1 für letzte Spalte oder 8 für Außenwegzug in bew.csv |
Auswahlfilter | #1 == 2013 and #-1 > 3.2: Auswahl Sätze mit Wert 2013 in Spalte 1 und letzter Spalte größer 3.2 (Dezimalpunkt !!) |
ZGZ.csv: #Jahr;Typ Geburtenraten;Bevölkerungsgruppe;Zusammengefasste Geburtenrate 2012;1;1;1,153543498 2012;1;2;1,573178309 ... 2020;7;1;1,173645832 2020;7;2;1,348576321Dann bedeutet
[1 ] Zeitachse [ ] Schlüssel [-1 ] y-Achse [#2==5 #3==2 ] AuswahlfilterWähle Spalte 1 (Jahr) als Zeitachse
zr_gem.csv: #Jahr;Gebietskennzeichen;Bevölkerungsgruppe;Geschlechtsgruppe;Altersgruppe;Summe(Anzahl) 2012;1001;1;1;00;1159,82454 2012;1001;1;1;01;1062,4913 ... 2020;9355;2;2;99;9,00243769619264bewirken die Schlüsselspalten
2 3 4 | Eigene Zeitreihe pro Gebiet, Bevölkerungsgruppe und Geschlecht |
---|
Zeitreihe der Gesamtbevölkerung | |
#4==2 | Zeitreihe über die weibliche Bevölkerung |
#2==3005 #3==2 #4==1 | Zeitreihe über männliche Ausländer des Gebiets 3005 |
strb2010.csv: #Typ;Bevölkerungsgruppe;Geschlechtsgruppe;Altersgruppe;Sterberate 1;1;1;00;0,0123 ... 3;2;2;99;0,5123dann bedeutet
[-2 ] Zeitachse [-1 ] y-Achse [#1==3 #2==1 #3==2 ] Auswahlfiltereine Zeitreihe über die Altersgruppen mit Auswahl Typ Sterberaten 3, deutsch, weiblich
messwert.csv: #x;y 3,10;0,921 ... 3,19;0,941dann bedeutet
[1 ] Zeitachse [2 ] y-Achseeine Zeitreihe über Spalte 1 (x) und Wert aus Spalte 2 (y)
[2016:2036]
Jahre[0:99 ]
Altersgruppen[0,3:0,7 ]
Meßwerte0:4 | fallende Funktion für junge Jahre |
---|---|
5:29 | Konstante oder Gerade für mittlere Jahre |
30:99 | steigende Funktion für Alte |
[2016:2046]
Bereich Jahre Plotausgabe und Ausgabdatei[1900:2100:5 ]
Ausgabedatei mit Werten für 1900, 1905, ..., 2100[3,1:3,4:0,02:1]
Ausgabedatei mit Werten für 3,10, 3,12, ..., 3,40 und plotte Ausgabedatei[0:* ]
Skalierung y-Achse Plotausgabe, Beispiele:
0:* | 0 bis größter Wert pro Zeitreihe |
---|---|
*:* | kleinster bis größter Wert pro Zeitreihe |
-50:120 | -50 bis 120 für alle Zeitreihen |
1e-4:1e2 log | 0.0001 bis 100 mit logarithmischer Werteachse für alle Zeitreihen siehe auch gnuplot set logscale |
z | Potenzfunktion n-ten Grades incl. Wurzelfunktion (experimentell) z(x) = (Z2 * ((x + Z2)) n) Z0 mit n=2 Parabel, n=0.5 Quatratwurzel, n=0.33 Kubikwurzel, ... als Alternative zu Logistische Funktion |
---|---|
p | Polynom n-ten Grades (experimentell) p(x) = P0 + P1x + P2x2 + ... + Pnxn falls Konstante, Parabel, kubische Funktion nicht ausreichen |
r | Rationale Funktion n-ten Grades (experimentell) r(x) = (Z0 + Z1x + Z2x2 + ... + Znxn)/(N0 + N1x + N2x2 + ... + Nnxn) bisweilen für Extrapolation besser als Polynom |
k | Konstante (Mittelwertbildung) |
g | Gerade (linearer Trend) |
p | Parabel |
k | kubische Funktion |
e | Exponentialfunktion (Wachstumsprozess) |
l | Logistische Funktion (Sättigungsprozess) |
n | Normalverteilung |
w | Weibull-Funktion (für y-Wertebereich 0 .. 1 (z.B. Sterberaten)) |
s | Sinus (experimentell) |
Durch editieren der Datei fit.txt, starten von Gnuplot (gnuplot.exe) und Ausfuhren (load 'fit.txt') kann der Benutzer weitere Regressionsfunktionen (z.B. Hyperbel y(x) = 1/x) einfugen.
SIKURS Dateien, die sich für das Tool eignen:
0 .. 10 | jung | abnehmende Sterberate | fallende Weibull-Funktion |
---|---|---|---|
11 .. 29 | mittel | zufällige Sterberate | Konstante (Mittelwert) |
30 .. 99 | alt | zunehmende Sterberate | steigende Weibull-Funktion |
strb1992.csv Eingabedatei [-2 ] Zeitachse vorletzte Spalte Altergruppen [-1 ] y-Achse letzte Spalte Sterberate [#1==1 and #2==1 and #3==1] Filter: Typ 1, BG 1, GG 1 strb1992_roh.csv Ausgabedatei Extrapolation [0:10 ] zu analysierender Jahresbereich Eingabedatei [0:10 ] Jahresbereich Plotausgabe und Ausgabedatei [0:* ] Skalierung y-Achse [v] Weibull-Funktion
[10:29 ] zu analysierender Jahresbereich Eingabedatei [10:29 ] Jahresbereich Plotausgabe und Ausgabedatei [v] Konstante
[30:99 ] zu analysierender Jahresbereich Eingabedatei [30:99 ] Jahresbereich Plotausgabe und Ausgabedatei [v] Weibull-Funktion
zusammengefaßt