Berechnen von SIKURS-Eingabdaten aus Statistikdatensatz Bestand/Bewegung, Makrodaten und weiterer Quellen
Übersicht über die Dateien Statitikdatensatz, Makrodateien, SIKURS-Dateien, Haushalteprognose
dstbest*.txt[.lnk]
-- Statistikdatensatz Bestanddstbew*.txt[.lnk]
-- Statistikdatensatz BewegungF:/sikurs/statistikdatensatz: 2011 Z02:20111231 dstbest_2011.csv.lnk ! 2012 Z02:20130117 dstbest_2012.csv.lnk ? 2013 Z02:20151231 dstbest_2013.csv 2011 Z01:20111231 dstbew_alt.csv.lnk 2012 Z01:20121231 dstbew_neu.csv.lnk
!
eine möglicherweise richtige Korrektur der Referenzjahrs?
eine wahrscheinlich falsche Korrektur des Referenzjahres
Die Makrodateien werden in ein Unterverzeichnis makro
geschrieben.
Auswahlfilter R01 (1+2) | Möglichkeit eine Basisgemeinde auszuwählen | ||||||
Abbildung R02/R02U2/ANSTI/ANSTE (RQZ/RQZU2) (1+2) | Aggregationsstufe für die Ausgabedateien | ||||||
Abbildung Gebiet GEM in Teilgebiet REFTYP (1+2) | Vom Gebietsschlüssel in GEM wird die gegebnen Anzahl Stellen von hinten gestrichen, um auf den Schlüssel von REFTYP zuzugreifen. Beispiel: 3 Abbildung GEM -> REFTYP12345 Gebietsschlüssel GEM12 Gebiets(aggregat)schlüssel REFTYPDiese Aggregation reduziert bei sehr feinkörnigen Gebieten (z.B. Haushalte) die Größe von REFTYP wesentlich. | ||||||
Anzahl signifikante Stellen Außentyp W40/W41 (2) |
| ||||||
Ableitung Demografische Sondergruppen (1) | 0: nein, 1: ANSTI≠1, 2: ANSTE≠1 | ||||||
Ableitung Erstbezug Neubauten (2) | 0: nein, 1: übernehme Feld NEUB in Datei neubaubezug.csv | ||||||
Ableitung Nettobewegungen (2) | 0: nein, 1: Ausschluss der Statistikdatensätze Bewegung mit Feld ANST (267/1) = 2 (Adresse ist Anstalt / Pflegeheim) |
Für Verarbeitung von Statistikdatensatz Bestand und Bewegung gelten folgende Details:
Verabeitung Statistikdatensatz Bevölkerungsbestand mit Ausgabe der für die Ratenberechnung benötigten Makrodatei, d.h. Bestandsdatei und optional Demografische Sondergruppen.
Beim Lesen von dstbest
gilt der Filter W01=1 (Personen am Ort der HW)
Ausgabedateien:
Jahr | JJJJ aus Z02 Verarbeitungsdatum |
Gebiet | Abbildung R02/R02U2/ANSTI/ANSTE |
Bevölkerungsgruppe | wenn P05 = 000 dann 1 sonst 2 (*) |
Geschlechtsgruppe | P02 |
Altersgruppe | A01 |
Personen | Anzahl |
(*) will man mit Bevölkerungsgruppe statt "1: deutsch, 2: nicht deutsch"
(mit einer Referenzdatei refP05
) feiner differenzieren,
oder ein anderes Attribut (z.B. P08 Religion), oder ein kombiniertes Attribut
(z.B. 1: deutsch, RK, ..., n: nicht deutsch, SO) verwenden, ist obige Ableitung
zu erweitern.
Mit Anzeige Statistikdatensatz
können die Ergebnisse überprüft, oder andere Filterbedingungen
getestet werden.
Beispiel Sterbefälle:
dstbest*.txt[.lnk]
[0 ] Hexadezimaldarstellung
[1-* ] Satznummern
Satzinhalt
# berechne Makrodatei Bestand
$bb->{jahr} = substr(Z02,0,4) unless exists $bb->{jahr};
if (W01==1) { # Hauptwohnung
my $G = substr(R02,0,2); # Gebiet: 2 Stellen aus R02
my $BG = bevgrp(P05); # Bevölkerungsgruppe
my $AG = altgrp(A01); # Alter bis 99
$bb->{bestand}{$bb->{jahr}}{$G}{$BG}{P02}{$AG}++
}
END { pcsv($HTM, $bb->{bestand}, "bestand_$bb->{jahr}.csv", '#Jahr;Gebiet;BG;GG;AG;Anzahl') };
[ ] Ausgabe Sätze in Tabelle
[ ] Ausgabe Sätze in csv-Datei
[ ] Ausgabe Sätze in dst-Datei
[ ] Histogramm
[ OK ]
Verabeitung Statistikdatensatz Bevölkerungsbewegungen mit Ausgabe der für die Ratenberechnung benötigten Makrodateien, d.h. Bewegungsdateien.
Für die Abbildung von W40+W41 in Außentypen für aussenzuzug
und aussenwegzug
wird die Datei reftya.csv
gelesen.
reftya.csv: #W40W41;Außentyp 012;2 ...d.h. Abbildung aller W40+W41 auf den Außentyp.
reftya.csv
existiert, so wird für alle W40+W41 der
Außentyp 1 oder der Schlüsselwert (siehe hier)
angenommen.reftya_2015.csv
(für Referenzjahr 2015) ins Unterverzeichnis
makro ausgegeben.copy makro\reftypa_2015.csv reftya.csv
reftya.csv
wiederholen.
Eine weitere Aggregation (z.B. auf Typen Geburtenraten) kann anschließend
bei der Berechnung der fruc-Datei aus Geburten und Bestand durch
Angabe einer Referenzdatei erfolgen.
Beim Lesen von dstbew
gilt der Filter W01=1 (Personen am Ort der HW)
Ausgabedateien:
Jahr | JJJJ aus Z01 Verarbeitungsdatum |
Quellgebiet | Anzahl signifikante Stellen aus R02 |
Außentyp | reftya(W40+W41) |
Bevölkerungsgruppe | wenn P05 = 000 dann 1 sonst 2 |
Geschlechtsgruppe | P02 |
Altersgruppe | (*) |
Außenwegzug | Anzahl |
Jahr | JJJJ aus Z01 Verarbeitungsdatum |
Außentyp | reftya(W40+W41) |
Zielgebiet | Anzahl signifikante Stellen aus R02 |
Bevölkerungsgruppe | wenn P05 = 000 dann 1 sonst 2 |
Geschlechtsgruppe | P02 |
Altersgruppe | (*) |
Außenwegzug | Anzahl |
zuvgjjjj.csv
verwendet werden.
Jahr | JJJJ aus Z01 Verarbeitungsdatum |
Gebiet | Anzahl signifikante Stellen aus R02 |
Bevölkerungsgruppe | wenn P05 = 000 dann 1 sonst 2 |
Geschlechtsgruppe | P02 |
Altersgruppe | 0 |
Babies | Anzahl |
Jahr | JJJJ aus Z01 Verarbeitungsdatum |
Gebiet | Anzahl signifikante Stellen aus R02 |
Bevölkerungsgruppe von | wenn P05=000 dann 1 sonst 2 |
Bevölkerungsgruppe nach | wenn P05QZ=000 dann 1 sonst 2 |
Geschlechtsgruppe | P02 |
Altersgruppe | (*) |
Wechsel der Bevölkerungsgruppe | Anzahl |
Jahr | JJJJ aus Z01 Verarbeitungsdatum |
Quellgebiet | Anzahl signifikante Stellen aus R02 |
Zielgebiet | Anzahl signifikante Stellen aus RQZ |
Bevölkerungsgruppe | wenn P05 = 000 dann 1 sonst 2 |
Geschlechtsgruppe | P02 |
Altersgruppe | (*) |
Binnenwegzug | Anzahl |
Jahr | JJJJ aus Z01 Verarbeitungsdatum |
Gebiet | Anzahl signifikante Stellen aus R02 |
Bevölkerungsgruppe | wenn G02 = 000 dann 1 sonst 2 |
Altersgruppe | G01 |
Geburten | Anzahl |
Jahr | JJJJ aus Z01 Verarbeitungsdatum |
Gebiet | NEUB (Neubautyp 1-9) (statt Anzahl signifikante Stellen aus R02) |
Bevölkerungsgruppe | wenn P05 = 000 dann 1 sonst 2 |
Geschlechtsgruppe | P02 |
Altersgruppe | (*) |
Neubauerstbezieher | Anzahl |
Jahr | JJJJ aus Z01 Verarbeitungsdatum |
Gebiet | Anzahl signifikante Stellen aus R02 |
Bevölkerungsgruppe | wenn P05 = 000 dann 1 sonst 2 |
Geschlechtsgruppe | P02 |
Altersgruppe | (*) |
Sterbefälle | Anzahl |
(*) Das Alter wird nicht wie beim Bestand aus A01, sondern aus
der Differenz der Jahresanteile von Z01 und P01
(AG = substr(Z01,0,4)-substr(P01,0,4)) berechnet,
weil A01 in der Bewegungsdatei das Alter zum Zeitpunkt des Abzugs ist,
SIKURS aber das Alter zum 31.12. benötigt.
Für Tests kann zwischen Z01-Verarbeitungsdatum, Z02-Ereignisdatum gewählt werden.
Die Ausgabedateien können
als Eingabdateien für
"Eingabedaten/Berechnen/Start/SIKURS Eingabedaten berechnen..."
verwendet werden.
Mit Anzeige Statistikdatensatz
können die Ergebnisse überprüft, oder andere Filterbedingungen
getestet werden.
Beispiel Sterbefälle:
Auswahl Sätze für Anzeige
[0 ] Hexadezimaldarstellung
[1-* ] Satznummern
Satzinhalt
# berechne Makrodatei Sterbefälle
if (W01==1 and B03==2 and B04==2 and B07==1) {
$bb->{j} = substr(Z01,0,4);
my $g = substr(R02,0,2);
my $gg = (P05==0) ? 1 : 2;
my $ag = substr(Z02, 0, 4) - substr(P01, 0, 4);
$bb->{sterb}{$bb->{j}}{$g}{$gg}{P02}{min($ag,99)}++
}
END { pcsv($HTM, $bb->{sterb}, "sterb_$bb->{j}.csv", '#Jahr;Gebiet;BG;GG;AG;Anzahl') };
[ ] Ausgabe Sätze in Tabelle
[ ] Ausgabe Sätze in csv-Datei
[ ] Ausgabe Sätze in dst-Datei
[ ] Histogramm
[ OK ]
1-* | Auswahl erster bis letzter (*) Satz |
---|---|
W01==1 | W01 gleich 1 (doppeltes == wichtig) |
$bb->{J}{G}{BG}{GG}{AG}++ | zählt Jahr, Gebiet, Bevölkerungsgruppe, Geschlechtsgruppe, Alter |
substr(R02,0,2) | wählt die ersten beiden Ziifern aus R02 |
END {...}; | wird am Ende ausgeführt |
pcsv | gibt das Ergebnis aus Alternativ kann phtml verwendet werden |
# berechne Makrodateien aus dstbew $bb->{jahr} = substr(Z02,0,4) unless exists $bb->{jahr}; if (W01==1) { # Hauptwohnung my $G = substr(R02,0,2); # Gebiet: 2 Stellen aus R02 my $BG = bevgrp(P05) # Bevölkerunggruppe my $AG = altgrp(A01); # Alter bis 99 if (B03==1 and B04==1 and B07==1) { $bb->{geburt}{$G}{G02==0 ? 1 : 2}{G01}++; $bb->{baby}{$G}{$BG}{P02}{0}++; } elsif (B03==2 and B04==2 and B07==1) { $bb->{sterb}{$G}{$BG}{P02}{$AG}++; } elsif (ableitung_NEUB and B03==1 and B04~~[3,4] and B07~~[1,2] and NEUB ne ' ' and NEUB!=0) { $bb->{neubaub}{$G}{$BG}{P02}{$AG}++; } elsif (B03==1 and B04==3 and B07~~[1,2]) { $bb->{zuzug}{1}{$G}{$BG}{P02}{$AG}++; } elsif (B03==2 and B04==3 and B07~~[1,2]) { $bb->{wegzug}{$G}{1}{$BG}{P02}{$AG}++; } elsif (B03==2 and B04==4 and B07==1) { $bb->{strom}{$G}{substr(RQZ,0,2)}{$BG}{P02}{$AG}++; } elsif (B03==2 and B05==4) { if (((P05>0 and P05QZ==0) or (P05==0 and P05QZ>0)) and (P05!=P05QZ)) { $bb->{bgw}{$G}{$BG}{P05QZ==0 ? 1 : 2}{P02}{$AG}++; } } } END { pcsv($HTM, $bb->{wegzug}, "aussenwegzug_$bb->{jahr}.csv"); pcsv($HTM, $bb->{zuzug}, "aussenzuzug_$bb->{jahr}.csv"); pcsv($HTM, $bb->{baby}, "baby_$bb->{jahr}.csv"); pcsv($HTM, $bb->{bgw}, "bgw_$bb->{jahr}.csv"); pcsv($HTM, $bb->{strom}, "binnenwegzug_$bb->{jahr}.csv"); pcsv($HTM, $bb->{geburt}, "geburt_$bb->{jahr}.csv"); pcsv($HTM, $bb->{neubaub}, "neubaubezug_$bb->{jahr}.csv"); };
sterb.csv
oder sterb_2012.csv
und sterb_2013.csv
für strb2013_roh.csv
und schreibe die gewünschten Ausgabedateien ins Unterverzeichnis
bprog
(Bevölkerungsprognose)
Eingabedateien Verzeichnis makro | Ausgabedatei bprog | ||
---|---|---|---|
bestand_2015 | |||
bestand_2016 | baby_2016 | sterb_2016 | |
bestand_2017 | baby_2017 | sterb_2017 | gem2017_roh |
baby_2018 | sterb_2018 | strb2018_roh |
Vor der Berechnung der Prognoseparameter sollten die Eingabedateien mit den Programmen Pyramiden, Visualisieren und Glätten, und GIZEH zur Kontrolle unbesetzter oder mit Null besetzter Felder sowie unplausibler Ausreißer visualisiert und gegebenenfalls modifiziert werden. Von einer Glättung der Eingabedateien ist in der Regel abzuraten.
Enthalten die Eingabedateien Gebietskennzeichen, die in Gebietstypen
umzuschlüsseln sind, dann muss eine Referenzdatei reftyp.csv
mit der gleichen Strukur wie
reftyp
in der Bevölkerungsprognose erstellt werden.
Beispiel:
reftyp.csv: #GKZ;Name;TYG;TYS;TYB;TYZZA;TYQWA;TYNEE;TYREA;TYWBG;TYAGF;TYHH;AGG 10012;Adorf;1;1;1;1;1;1;1;1;1;1;11 10023;Bdorf;2;2;2;2;2;2;2;2;1;2;12 ...
Beim Start des Programms können in der Eingabemaske folgende Parameter festgelegt werden:
Auswahl der zu berechnenden SIKURS-Datei Raten (BGWR, DSGR, ..., WEGZ), Quoten (NEBQ, ZUAQ, ZUDQ), Ausgangsbevölkerung (ZUVL, GEM, REFTYP).
Zur Sikurs konformen Berechnung der Bewegungsparameter muss die unterste Altersgruppe des Bestandes die Anzahl Geborener im Berichtsjahr enthalten. Die Werte der entsprechenden Felder mit dem Altersindex 0 können nach drei Alternativen ermittelt werden.
(siehe Abschnitt: Berechnung der Ausgabedateien)
Wenn mindestens eine der Optionen für Bewegungs- und Bestands-Dateien gesetzt ist, wird eine Referenzdatei eingelesen und die Gebietsnummern in den Bestands-/Bewegungs-Dateien in Typnummern umgesetzt. Andernfalls wird angenommen, dass die Bestands-/Bewegungs-Dateien bereits Typnummern enthalten.
Wird eine Baby-Datei verwendet, muss sie die gleiche Struktur wie die Bestands-Dateien haben, d.h. in Spalte 2 ein Gebietskennzeichen oder einen Typ
Wenn man Prognosen mit nur einer Bevölkerungsgruppe rechnen will, kann man evtl. vorhandene unerschiedliche Bevölkerungsgruppe zu einer Bevölkerungsgruppe zusammenfassen.
[v] Altersgruppen zu Altersklassen zusammenfassen
altersklassen.csv: #! expand(1) #Ausgabedatei;Altersklassen bgwr;21 strm;6;21;65 wegz; zuaq;18;65fasst für ausgewählte Ausgabedateien Altersgruppen zu Altersklassen zusammen, dabei bedeutet (bei 100 Altersgruppen)
Ausgabedatei | Vorgabe Klassen | Altersklassen |
---|---|---|
bgwr | 21 | 0..20, 21..99 |
strm | 6;21;65 | 0..5, 6..20, 21..64, 65..99 |
wegz | 0..99 | |
zuaq | 18;65 | 0..17, 18..64, 65..99 |
zuaq2017.csv
sieht dann z.B. so aus
#Außentyp;Zieltyp Außenzuwanderung;Bevölkerungsgruppe;Geschlechtsgruppe;Altersgruppe;Quote 1;1;1;1;00..17;0,012 1;1;1;1;18..64;0,015 1;1;1;1;65..99;0,013 ... 5;7;2;2;00..17;0,012 5;7;2;2;18..64;0,015 5;7;2;2;65..99;0,013Mit dem optionalen Eintrag
#! expand(1)
in
altersklassen.csv
kann man die Altersbereiche z.B.
00..17
in 18 getrennt Zeilen auflösen
siehe auch roadmap 056
Eine Rate = 0 entsteht, wenn für einen positiven Bestand keine Bewegung
vorliegt.
Beispiel: Sterberaten: Sterberate 0 bedeutet eine berechnete Sterberate 0.
Enthält eine Altersguppe weder Berstand noch Bewegung kann keine Sterberate
berechnet werden, da aber Sterberaten nie 0 sind, muss man eine andere
Quelle (z.B. amtliche Sterberaten) heranziehen.
Für die Berechnung der Fruchbarkeit gelten die Altersuntergrenzen und Altersobergrenzen Fruchtbarkeit, z.B. [15 .. 44], sonst immer die Anzahl Altersgruppen, z.B. 100, d.h. das Intervall [0 .. 99].
Diese Grenzen werden zweifach genutzt:
Wenn beim Einlesen die AG unterhalb/oberhalb dem gultigen Intervall ist, dann wird der Wert bei der "Untergrenze oder weniger"/"Obergrenze oder mehr" aufaddiert.
Beispiel 1: AG bei Geborene sei 12 und gultiges Intervall [15 .. 44], dann wird Wert auf "AG 15 oder jünger" addiert. Dies führt zu einer Fruchtbarkeitsrate 0 bei der Altergruppe 12 und einer erhöhten Fruchtbatkeitsrate bei Altersgruppe 15. Die Anzahl der prognostizierten Gebrten wird dadurch nicht verändert. Die Anzahl gefundener Geburten außerhalb des Fruchtbarkeitsintervalls wird protokolliert. Ist die Anzahl signifikant, sollte der Anwender das Fruchtbarkeitsintervall erweitern.
Beispiel 2: AG bei Sterbefälle sei 103 und Anzahl AG sei 100,
dann wird Wert auf "AG 99 oder älter" addiert.
Die Anzahl Sterbefälle über 100 wird protokolliert.
Ist die Anzahl signifikant, kann der Anwender überlegen mit z.B. 105
Altersgruupen zu rechnen.
Die Altersgrenzen werden weiterhin bei der Option Ausgabe Null-Werte dazu genutzt, um z.B. ab AG 96 unbesetzte Felder bis zur Obergreneze 99 als 0 auszugeben.
GP = Anteil männlicher Geborener für Sterberaten bei Geborenendatei
aussenzuzug.csv #jahr;tya;Gebiet;bg;gg;ag;Anzahl 2020;1;1;1;1;00;40 2020;1;2;1;1;00;60 zuaq2020.csv #tya;zza;bg;gg;ag;quote 1;1;1;1;00;40/(40+60)=0,4 1;1;1;1;01;1/2=0,5 1;2;1;1;00;60/(40+60)=0,6
Das Programm ermittelt aus dem Bestand einen Vorschlag für den
Jahresbereich für die Berechnung, den man dann modifizieren kann.
Dabei sind folgende Schreibweisen gleichwertig:
2011, 2013, 2014, 2015, 2017 2011, 2013 .. 2015, 2017("
,
" trennt Einzelwerte, "..
" beschreibt ein Intervall)
Die Namen für die Eingabedateien sind fest, Sterbefälle können in
Dateien sterb.csv, sterb2013.csv, sterb_2015.csv, ...
abgelegt sein;
d.h. Dateinamen für Sterbefälle mussen mit sterb
beginnen,
optional gefolgt von einem Unterstreichungszeichen _
und Ziffern
Durch Verknüpfungen z.B. von bestand_2013.lnk
auf
gem2013.csv
läßt sich das feste Namensschema aufweichen.
Eine Eingabedatei kann alle gewünschten Jahre enthalten (z.B. Geborene der Jahre 2001 bis 2007). Alternativ kann pro Jahr eine eigene Datei verwendet werden (z.B. geborene_2001.csv
bis geborene2007.csv
).
Es werden grundsätzlich alle Dateien eines Typs gelesen, die Auswahl der gewünschten Jahre erfolgt anhand der Jahresspalte in der Datei.
Die Anzahl in Bestand und Bewegung ist ganzzahlig, d.h. sie darf kein Dezimalkomma enthalten.
aussenwegzug.csv - Außenwegzüge Nr. Merkmal 1 jhr Jahr 2 vty Gebiet (-styp) von 3 naty Außen-Gebietstyp nach (Abbildung mit optionaler Datei reftya) 4 bg Staatsangehörigkeit/Bevölkerungsgruppe 5 gg Geschlecht (1 oder 2 Ausprägungen) 6 ag Geburtsjahrindex (100 Ausprägungen) 7 n Anzahl Wegzüge aussenzuzug.csv - Außenzuzüge Nr. Merkmal 1 jhr Jahr 2 vaty Außen-Gebietstyp von (Abbildung mit optionaler Datei reftya) 3 nty Binnen-Gebiet (-styp) nach 4 bg Staatsangehörigkeit/Bevölkerungsgruppe 5 gg Geschlecht (1 oder 2 Ausprägungen) 6 ag Geburtsjahrindex (100 Ausprägungen) 7 n Anzahl Zuzüge binnenwegzug.csv - Binnenwegzuge (Binnenwanderung) Nr. Merkmal 1 jhr Jahr 2 vty Gebiet (-styp) von 3 nty Gebiet (-styp) nach 4 bg Staatsangehörigkeit/Bevölkerungsgruppe 5 gg Geschlecht (1 oder 2 Ausprägungen) 6 ag Geburtsjahrindex (100 Ausprägungen) 7 n Anzahl Wegzüge bgw.csv - Bevölkerungsgruppenwechsel Nr. Merkmal 1 jhr Jahr 2 ty Gebiet (-styp) 3 vbg Bevölkerungsgruppe von 4 nbg Bevölkerungsgruppe nach 5 gg Geschlecht (1 oder 2 Ausprägungen) 6 ag Geburtsjahrindex (100 Ausprägungen) 7 n Anzahl Gruppenwechsel geburt.csv - Geborene nach dem Alter der Mutter (**) Nr. Merkmal 1 jhr Jahr 2 ty Gebiet (-styp) 3 bg Staatsangehörigkeit/Bevölkerungsgruppe der Mutter 4 ag Geburtsjahrindex der Mutter (30 Ausprägungen) 5 n Anzahl Geborene sterb.csv - Sterbefälle Nr. Merkmal 1 jhr Jahr 2 ty Gebiet (-styp) 3 bg Staatsangehörigkeit/Bevölkerungsgruppe 4 gg Geschlecht (1 oder 2 Ausprägungen) 5 ag Geburtsjahrindex (100 Ausprägungen) 6 n Anzahl Sterbefälle
baby.csv - Bestand Altersgruppe 0 (Geborene (*) für gealterten Bestand)
Nr. Merkmal
1 jhr Jahr
2 ty Gebiet (-styp)
3 bg Staatsangehörigkeit/Bevölkerungsgruppe
4 gg Geschlecht (Anzahl Ausprägungen wie Bestand)
5 ag Geburtsjahrindex (immer 0)
6 n Anzahl
bestand.csv - Bestand,
dsg.csv - demografische Sondergruppe
nettobestand.csv - Nettobestand
neubaubezug.csv - Erstbezugsbevölkerung
Nr. Merkmal
1 jhr Jahr
2 ty Gebiet (-styp)
3 bg Staatsangehörigkeit/Bevölkerungsgruppe
4 gg Geschlecht (1 oder 2 Ausprägungen)
5 ag Geburtsjahrindex (100 Ausprägungen)
6 n Anzahl
Wenn eine Referenzdatei ausgewählt wurde, werden Gebietskennzeichen beim Einlesen in Gebietstypen umgeschlüsselt. Wenn keine Referenzdatei ausgewählt wurde, müssen die Eingabedateien bereits den Gebietstyp enthalten.
Wenn die Eingabedateien mehr als die gewünschten Altergruppen enthält (z.B. Altersgruppe 103 bei 100 gewünschten Altersgruppen 0 .. 99), dann werden diese der obersten Altergruppe (z.B. 99 und älter) zugeschlagen.
Der Bestand wird vor der Berechnung von Raten nach dem Einlesen gealtert (hochzählen der Altersindices, mit Sonderfall Altersgruppe 99 ist Summe aus Altersgruppe 98 und Altersgruppe 99).
Für die Besetzung der nach der Verschiebung der Altersindizes leeren Altersgruppe (Index = 0), d.h. die Geborenen des Berichtsjahres im Bestand, gibt es je nach dem verfügbaren Datenmaterial folgende Alternativen im Menüpunkt Ermittlung Geborene im Bestand.
baby
(ty,bg,gg = Differenzierung nach Typ, Bevölkerungsgruppe und Geschlecht)
für das Berichtsjahr (*). Diese Variante erfordert keine
zusätzlichen Annahmen und entspricht am besten dem Berechnungsansatz der
SIKURS-Prognoserechnungen
geburt
(ty, bg und ag der Mutter) (**).Diese Unterscheidung ist besonders bei der Berechnung der Sterberaten von Bedeutung, weil die Sterberaten der männlichen und der weiblichen Geborenen unterschiedliche Ausprägung haben.
Bei der Berechnung der Binnen- und Außenwegzugsraten für den Geburtsjahrgangsindex 0 ist diese Differenzierung nicht relevant. Bei den Wanderungsraten wird davon ausgegangen dass sich die Verhaltensweisen in dieser Gruppe nicht unterscheiden und es daher zulässig ist, für männliche und für weibliche Geborene des Berichtsjahres den gleichen Wert anzunehmen.
Zur Berechnung der Ausprägungen werden daher die Bewegungen der Geborenen des Berichtsjahres zusammengefasst und auf den Bestand in der Datei Geborene bezogen. Die berechnete Rate gilt dann sowohl für den männlichen als auch für den weiblichen Geburtsjahrgangsindex 0. Differenzierungen nach der Staatsangehörigkeit sind davon unberührt.
Bei der Berechnung der Sterberaten wird analog vorzugegangen. Allerdings ist es in diesem Fall nicht zulässig, für männliche und weibliche des Geburtsjahrgangsindex 0 die gleichen Ausprägungen, d.h die durchschnittliche Sterberaten beider Geschlechter zu verwenden.
In einem weiteren Schritt wird daher anschließend die durchschnittliche Rate mit je einem Faktor Geschlechterproportion modifiziert, der sich an den unterschiedlichen Ausprägungen der Sterblichkeiten für die 0 bis unter 1 Jährigen orientiert. Dieser Faktor kann den Angaben des Statistischen Jahrbuchs entnommen werden; er ist ähnlich konstant wie der Faktor zur Ermittlung der Geborenen nach dem Geschlecht.
0 BGWR0000.CSV |
Bevölkerungs-Gruppen-Wechsel-Rate
# Aggregation Wechsler und Bestand über ausgewählte Jahre bwgagg(ty,vbg,nbg,gg,ag) += bgw (jhr,ty,vbg,nbg,gg,ag) bevagg(ty, bg,gg,ag) += bestand (jhr,ty, bg,gg,ag) # Berechnung Rate bgwr(ty,vbg,nbg,gg,ag) = bwgagg(ty,vbg,nbg,gg,ag)/bevagg(ty,vbg,gg,ag) |
1 DSGR0000.CSV |
Anteile demografische Sondergruppen an der Bevölkerung# Aggregation Bestand und dsg über ausgewählte Jahre dsgagg(ty,bg,gg,ag) += dsg (jhr,ty,bg,gg,ag) bevagg(ty,bg,gg,ag) += bestand(jhr,ty,bg,gg,ag) # Berechnung Anteil dsgr(ty,bg,gg,ag) = dsgagg(ty,bg,gg,ag)/bevagg(ty,vbg,gg,ag) |
2 FRUC0000.CSV |
Geburtenraten# Aggregation Geborene und Bestand über ausgewählte Jahre gebagg(ty,bg, ag) += geburt (jhr,ty,bg, ag) bevagg(ty,bg,gg,ag) += bestand(jhr,ty,bg,gg,ag) if gg=2 # Berechnung Geburtenrate fruc(ty,bg,ag) = gebagg(ty,bg,ag)/bevagg(ty,bg,2,ag) |
3 STRB0000.CSV |
Sterberaten
# Aggregation Sterbefälle und Bestand über ausgewählte Jahre stragg(ty,bg,gg,ag) += sterb (jhr,ty,bg,gg,ag) bevagg(ty,bg,gg,ag) += bestand(jhr,ty,bg,gg,ag) # Berechnung Sterberate strb(ty,bg,gg,ag) = stragg(ty,bg,gg,ag)/bevagg(ty,bg,gg,ag) |
4 STRM0000.CSV |
Binnenwegzugsraten# Aggregation Binnenwegzüge und Bestand über ausgewählte Jahre bwzagg(vty,nty,bg,gg,ag) += binnenwegzug(jhr,vty,nty,bg,gg,ag) bevagg( ty,bg,gg,ag) += bestand (jhr, ty,bg,gg,ag) # Berechnung Binnenwegzugsraten strm(vty,nty,bg,gg,ag) = bwzagg(vty,nty,bg,gg,ag)/bevagg(vty,bg,gg,ag) |
5 WEGZ0000.CSV |
Außenwegzugsraten
# Aggregation Außenwegzüge und Bestand über ausgewählte Jahre awzagg(vty,naty,bg,gg,ag) += aussenwegzug(jhr,vty,naty,bg,gg,ag) bevagg(vty, bg,gg,ag) += bestand (jhr,vty, bg,gg,ag) # Berechnung Außenwegzugsraten wegz(vty,naty,bg,gg,ag) = awzagg(vty,naty,bg,gg,ag)/bagg(vty,bg,gg,ag) |
6 NEBQ0000.CSV |
Aufteilung Erstbezugsbevölkerung auf demografische Gruppen
# Aggregation Erstbezugsbevölkerung über ausgewählte Jahre nebagg(ty,bg,gg,ag) += neubaubezug(jhr,ty,bg,gg,ag) # Berechnung Quoten nebq(ty,bg,gg,ag) = nebagg(ty,bg,gg,ag)/summe(nebagg(ty)) |
7 ZUAQ0000.CSV |
Allokationsquoten
# Aggregation Außenzuzüge über ausgewählte Jahre azaagg(vaty,nty, bg,gg,ag) += aussenzuzug(jhr,vaty,nty,bg,gg,ag) summe(azaagg(vaty,bg,gg,ag)) += aussenzuzug(jhr,vaty,nty,bg,gg,ag) # Berechnung Quoten zuaq(vaty,nty,bg,gg,ag) = azaagg(vaty,nty,bg,gg,ag)/summe(azaagg(vaty,bg,gg,ag))Die Sortierung in der Ausgabe ist TYA, BG, GG, AG, TYZUAQ #TYA;TYZZA;BG;GG;AG;Quote 1; 1; 1; 1; 0;0,2 1; 2; 1; 1; 0;0,3 1; 3; 1; 1; 0;0,5 # Σ = 1 ... 5; 1; 2; 2;99;0,4 5; 2; 2; 2;99;0,1 5; 3; 2; 2;99;0,5 # Σ = 1um die Summe = 1 über die Typen Zuzug von Außen besser berechnen zu können |
8/9/10/11 ZUDQ0000.CSV ZUVOL.CSV |
Zuzugsquoten K1/K2/K3/K4# ZUDQ: Aggreagtion Außenzuzüge über ausgewählte Jahre azdagg(vaty,bg,gg,ag) += aussenzuzug(jhr,vaty,nty,bg,gg,ag) summe(azdagg(vaty)) += aussenzuzug(jhr,vaty, bg,gg,ag) # Umrechnung in Quoten zudq(vaty,bg,gg,ag) = azdagg(vaty,bg,gg,ag)/summe(azdagg(vaty)) # ZUVOL: Aggregation aussenzuzug pro Jahr und K2: vaty; K3: vaty, bg; K4, vaty, bg, gg |
12 ZUVL0000.CSV |
Zuzugsvolumen/K5# Aggreagtion aussenzuzug über Referenzdatei zuvl(jhr,ty,bg,gg,ag) += aussenzuzug(jhr,gkz,bg,gg,ag) |
13 GEM0000.CSV |
Ausgangsbevölkerung# Aggregation Jahr j Bestand über Referenzdatei # j = letzets Jahr Bewegungsdatei - 1 falls vorhanden sonst letztes Jahr Bestand gem(jhr,ty,bg,gg,ag) += bestand(jhr,gkz,bg,gg,ag) # ty darf beliebiges Schlüsselintervall sein |
14 REFTYP0000.CSV |
Referenzdatei# Sammlung aller Gebietskennzeichen der Bestandsdateien #! 0 : Zusatzstellen in Gebietskennzeichen GEM 012;"";1;1;1;1;1,1;1;1;1;1;1Enthält Spalte 1 (Gebietskennzeichen) führende Nullen, muss man diese bei der Bearbeitung mit Excel besonders schützen (siehe Hinweis zu Eingabedatei reftyp im Benutzerhandbuch). Der Nutzer kann einen Gebietsnamen ergänzen und Typnummern für die Voreinstellung 1 vergeben. Normalerweise wird dies Datei im Verfahrensschritt "Makrodateien aus Statistikdatensatz" abgeleitet. Wenn der Anwender den Statisikdatensatz nicht nutzt und seine Makrodateien anderweitig beschafft, kann er hier die Erstellung von reftyp nachholen. |
Die Bewegungsdatei(en) oder Bestandsdatei(en) der ausgewählten Jahre werden jeweils aufaggregiert und die Anteile der einzelnen demografischen Gruppen an der entsprechenden Gesamtsumme berechnet. Die Summe der zusammengehörenden Quoten hat den Wert 1.
Der Benutzer wählt die Bewegungsdatei(en), die Bestandsdatei(en) der ausgewählten Jahre und den Typ der Ausgabedatei, für die die Raten berechnet werden.
Die Bewegungs- und Bestandsdatei(en) werden jeweils uber die Jahre aggregiert, die sowohl in den Bewegungs- und Bestandsdatei(en) vorkommen. Die (durchschnittlichen) Raten ergeben sich als Quotient von aggregierter Bewegung und aggregiertem durch Alterung und Geborene ins Folgejahr fortgeschriebenen Bestand.
Bei dieser Berechnung mussen für Bestand und Bewegung die Fälle kein Wert vorhanden (undef), Wert = 0 und Wert > 0 unterschieden werden.
Rate | Bestand (p) | |||
---|---|---|---|---|
undef | 0 | >0 | ||
Bewegung (m) | undef | nan | nan | 0 |
0 | nan | nan | 0 | |
>0 | ∞ | ∞ | m/p |
'nan' bedeutet 'not a number'
Der Wert ∞ wird als (unmögliche) Rate 'inf' ausgegeben.
Das Programm gibt eine Statistik uber berechnete und nicht besetzte Felder aus. Diese ist auf Plausibilität zu prufen!
Es empfiehlt sich die Raten/Quoten auf Plausibilität zu prüfen. Bei großen Fallzahlen nähern sich die Histogramme über das Alter (Visualisierung/Pyramiden) den bekannten Wahrscheinlichkeitsfunktionen (z.B. bei Geburtenraten einer Gauss'schen Glockenkurve oder bei Sterberaten einer Badewannenkurve) an. Bei zu geringen Fallzahlen, insbesondere bei schwach besetzten oder gar unbesetzten Altergruppen (z.B. über 95) ist eine Analyse notwendig, ob die Raten für eine Prognose brauchbar sind und ob sie durch Ersatz undefinierter Werte durch plausible Annahmen und durch Glättung von zufälligen Ausreißern verbessert werden können.
1 | F | Gesamtfertilitätsrate | |
---|---|---|---|
2 | MODE | mod | Modalwert (Modus, mode) der Fertilitätskurve |
3 | MEAN | μ | Mittelwert (mean) der Fertilitätskurve |
4 | VAR | σ2 | Varianz (variance) = Quadrat der Styndardabweichung σ der Fertilitätskurve |
0,01 | EPS: Schwellwert Abweichung MEAN, MODE ab dem die Gauss-Kurve statt der Hadwigerkurve verwedet wird, da die Hadwiger-Funktion für MEAN = MODE nicht definiert ist. |
10:50 | xrange: darzustellender Altersbereich |
0:* | yrange: darzustellender
Wertebereich, wahlweise auch in logarithmischer Skalierung z.B.
[0.1:1000 log ] |
#set title '...' #set xlabel '...' #set ylabel '...'Durch löschen des Kommentarzeichens
#
aktivieren sie die Legende
Titel und die Achsenbeschriftungen
hadwiger_analyse.csv: #Jahr;Typ Geburtenrate;Bevölkerungsgruppe;F;MODE;MEAN;VAR 2001;1;1;1,153543498;29,5;29,888691366019;25,9264020056364 2001;1;2;1,573178309;27,5;28,1682601457099;30,8067937264654 ... 2010;1;1;1,153543498;29,5;29,888691366019;25,9264020056364 2010;1;2;1,153543498;29,5;29,888691366019;25,9264020056364Damit kann man mit der Excel-Formel
=(F2-E2)/WURZEL(G2)
die
statistische Kennzahl
Schiefe
nach Karl Pearson S=(MEAN-MODE)/√VAR der Hadwiger-Funktion berechnen
hadwiger_synthese.csv: #Jahr;Typ Geburtenrate;Bevölkerungsgruppe;F;MODE;MEAN;VAR 2011;1;1;1,28;31,7;32,9;30,7 2011;1;2;1,4;28,0;29,1;29,8 ... 2020;1;1;1,15;32,5;33,8;31,9 2020;1;2;1,31;29,5;29,8;26,9und berechne die Ausgabedateien fruc2011.csv, ..., fruc2020.csv in den Ausgabeformaten
i#Geburtentyp;Bevölkerungsgruppe;Altersgruppe;Rate 1;1;13;0,00001 1;1;14;0,00013 ...Mit einem Schwellwert kann die Ausgabe winziger Werte in ganz niedrige und sehr hohe Altersgruppen vermieden werden.
#Geburtentyp;Bevölkerungsgruppe;Altersgruppe;Rate #1;1;0..99;hadwiger($3 1,1535 29,5 29,889 25,926) 1;1;13;0,00001 1;1;14;0,00013 ...
#Geburtentyp;Bevölkerungsgruppe;Altersgruppe;Rate 1;1;0..99;hadwiger($3 1,1535 29,5 29,889 25,926) 1;2;0..99;hadwiger($3 1,5731 27,5 28,169 30,806) ...Die Funktion
hadwiger
berechnet die Fruchtbarkeit in der Mitte der vorgegebenen Altergruppe.hadwiger_synthese.csv
kann das Tool Eingabdaten/Dynamisieren/Extrapolation unterstützend
herangezogen werden:hadwiger_analyse.csv
[1 ] Zeitachse [5 ] y-Achse [2:3 3:1 ] Auswahlfilterund der Auswahl einer Regressionsfunktion, z.B.
[√] Geradebekomme ich eine Trendanalyse für Geburtentyp 3, Bevölkerungsgruppe 1 und Hadwiger-Parameter MODE = 2 (Modalwert).
fruc2019.csv: #! let($y $JAHR-$STARTJAHR) # $y = 0, 1, 2, ... für die Prognosejahre #! let($f 0,02*$y) # Regressionsgerade für F #! let($g 0,01*$y) # Regressionsgerade für MODE, MEAN # Fruchtbarkeitsraten als Hadwiger-Funktion mit Dynamisierung von F, MODE, MEAN und konstantem VAR #ty;bg;ag;hadwiger(ag F MODE MEAN VAR ) 1;1;0..99;hadwiger($3 $f+1,1535 $g+29,5 $g+29,889 25,926) 1;2;0..99;hadwiger($3 $f+1,5731 $g+27,5 $g+28,169 30,806) ...
siehe auch raodmap 013
Berechnung von SIKURS-Geburtenraten aus amtlichen Fruchtbarkeitsziffern
Nr. | Kürzel | Merkmal |
---|---|---|
1 | ai | Altersindex (30 oder mehr Ausprägungen) |
2 | afz | Amtliche Fruchtbarkeitsziffer |
Beispiel 1: #$ year(2007) - setze Voreinstellung für Ausgabedatei fruc2007.csv #ai;afz 15;0,03 16;0,05 ... 48;0,02 49;0,01
Definition afz(15): amtliche, altersspezifische Fruchtbarkeitsziffer für 15- bis unter 16-Jährige.
Berechnung wenn amtliche Fruchbarkeitziffern für Intervall 15 bis 44 und älter vorgegeben ist, analog für andere Intervalle.
SIKURS amtliche Fruchtbarkeitsziffern
Index Bezeichnung
---------+------------------------------
15 (afz(15))
16 (afz(15)+afz(16))/2
17 (afz(16)+afz(17))/2
...
43 (afz(42)+afz(43))/2
44 (afz(43)+afz(44 und älter))/2
45 (afz(44 und älter))
Vorschlag uls:
Index Bezeichnung ---------+------------------------------ 14 (afz(15)/2) 15 (afz(15)+afz(16))/2 16 (afz(16)+afz(17))/2 17 (afz(17)+afz(18))/2 ... 48 (afz(48)+afz(49))/2 49 (afz(49)/2)
Ausgabedatei ist FRUCyyyy.csv mit den berechneten SIKURS Geburtenraten. Die ersten beiden Spalten sind (je nach
Option) 1..$NTYS;1..$NBG;1..$NGG
wie in den Dateien im GENERIC-Verzeichnis. Diese Notation bedeutet, dass die berechneten Raten für alle Typen der naturlichen Bevölkerungsbewegung und für alle Bevölkerungs- gruppen gleich sind. Für eine Visualisierung der Daten können die Variablen $NTYG
und $NBG
mit der Direktive #expand(1)
aufgelöst werden (siehe SIKURS-Handbuch).
Nr. | Merkmal | |
---|---|---|
1 | gg | Geschlecht |
2 | ag | Geburtsjahrindex (100 oder mehr Ausprägungen) |
3 | asz | Amtliche Sterbeziffer |
Beispiel 1: #$ year(2011) NAG(100) - Voreinstellung Ausgabedatei strb2011.csv mit 100 AG #gg;ag;asz 1;00;0,003 1;01;0,001 ... 2;99;0,500
Definition asz(i): Amtliche, altersspezifischen Sterbeziffer für i- bis unter i+1-Jährige)
Die Anzahl gewunschter Altersgruppen in der Ausgabe-Datei SIKURS-Sterberaten kann vorgegeben werden - wenn z.B. 105 vorgeben wird, dann wird als letzter Index 104 ausgegeben.
Im Normalfall soll die Anzahl Altersgruppen der SIKURS Sterberaten
der Anzahl Altersgruppen der Amtlichen Sterberaten folgen.
Die amtliche Sterbetafel enthalte 100 Altersgruppen, die SIKURS Sterberaten
sollen 100 (bzw 105) Altersgruppen enthalten
SIKURS amtliche Sterbetafel Index Bezeichnung ---------+------------------------------ 0 (asz(0))/2 1 (asz(0)+asz(1))/2 2 (asz(1)+asz(2))/2 ... 98 (asz(97)+asz(98))/2 99 (asz(98)+asz(99 und älter))/2 100 (asz(99 und älter) ... 104 (asz(99 und älter)
Ausgabedatei ist STRByyyy.csv mit den berechneten SIKURS-Sterberaten. Die ersten Spalten sind je nach Option fest,
oder 1..$NTYS;1..$NBG;1..$NGG
wie in den Dateien im GENERIC-Verzeichnis. Diese Notation bedeutet, dass die berechneten Raten für alle Typen der naturlichen Bevölkerungsbewegung und für alle Bevölkerungsgruppen gleich sind. Für eine Visualisierung der Daten können die Variablen $NTYS
, $NBG
und $NGG
mit der Direktive #expand(1)
aufgelöst werden (siehe SIKURS-Handbuch).
Berechne STRB-Dateien für mehrere Jahre aus einer gegebenen STRB-Datei, einer Datei ECKLE.CSV mit Zielwerten für die Lebenserwartung und einer optionalen Datei ECKLEW.CSV mit Gewichten für die Altersgruppen.
Diese Berechnung kann nur in der gleichen Differenzierung wie in der Datei strb erfolgen (Typ, Bevölkerungsgruppe und Geschlecht). Wenn die Lebenserwartung für einen bestimmten Typ/BG/GG z.B 70 Jahre ist, dann kann man den Zielwert z.B. 75 Jahre angeben. Dann werden alle Sterberaten iterativ so lange verändert (alle Sterberaten von AG 0 bis AG 99 mit einem gleichen Faktor $f multipliziert), bis der Zielwert erreicht ist.
Dieser Faktor $f wird durch ein Bisektionsverfahren ermittelt. Wenn der Zielwert kleiner als der Ausgangswert ist, dann wird die Überlebenswahrscheinlichkeit mit einem Faktor zwischen 0 und 1 angepasst (dies verhindert, dass eine Sterberate > 1 entsteht).
Der Anwender kann die Modifikation von Altersgruppen verhindern oder gewichten, um z.B. empirische medizinische Fakten uber die Entwicklung der Sterberaten abbilden zu können. Dafür definiert er eine Datei ECKLEW.CSV mit Gewichten für die Altersgruppe. Das Gewicht 1 entspricht dem Verfahren ohne Gewichtung, eine Altersgruppe mit Gewicht < 1 (z.B. 0,8) wird weniger stark angepasst, eine Altersgruppe mit Gewicht > 1 (z.B. 1,2) wird stärker angepasst. Das Gewicht $s verhindert die Anpassung der Sterberate der Altersgruppe
Auswahl einer Ausgangsdatei mit Sterberaten (z.B. strb2010.csv) mit 7 Typen Sterberaten, 2 Bevölkerungs-, 2 Geschlechts- und 100 Altersgruppen.
#Typ Sterberate;Bevölkerungsgruppe;Geschlechtsgruppe;Altersgruppe;Sterberate 1;1;1;00;0,02 ... 7;2;2;99;0,3
Wenn man noch keine Eckwertdatei ECKLE.CSV für die Lebenserwartung hat, kann man sie wie folgt erstellen:
man startet das Programm und wählt die Ausgangsdatei strb2010.csv. Die Ausgangsdatei wird gelesen, fehlende Werte werden als 0 angenommen. Die differenzierte Lebenserwartung für dieses Jahr wird berechnet und in eine Datei LEBENSERWARTUNG.CSV ausgegeben:
#Jahr;Typ Sterberate;Bevölkerungsgruppe;Geschlechtsgruppe;Lebenserwartung 2010;1;1;1;77,5 2010;1;1;2;83,2 ... 2010;7;2;2;85,0
Jetzt kann man diese Datei in ECKLE.CSV umbenennen und um eine Schätzung für die Lebenserwartung für ein Zukunftsjahr 2030 ergänzen
#Jahr;Typ Sterberate;Bevölkerungsgruppe;Geschlechtsgruppe;Vorgabe Lebenserwartung 2010;1;1;1;77,5 2010;1;1;2;83,2 ... 2010;7;2;2;85,0 2030;1;1;1;80 2030;1;1;2;86 ... 2030;7;2;2;83
Das Programm berechnet für alle Ziel-Jahre (hier 2010, 2030) bis auf
das Ausgangsjahr (hier 2010) eine Ziel-strb-Datei (hier strb2030.csv).
Wenn man eine demografische Gruppe aus strb von der Anpassung ausschließen will, so entfernt man die Angaben aus ECKLE.CSV oder kommentiert sie aus
#2030;4;1;2;86 keine Anpassung der Sterberaten
Eine Gewichtung der Altersgruppen über die Datei ECKLEW.CSV ist nur in
Ausnahmefällen sinnvoll!
Wenn vorhanden, wird diese mit den alterspezifischen Formeln
für Gewichte gelesen:
#Typ Sterberate;Bevölkerungsgruppe;Geschlechtsgruppe;Altersbereich;Gewichtsformel 1;1;1; 0.. 4;$f*$s # Anpassung an Lebenserwartung ohne Gewichtung 1;1;1; 5.. 9;$f*$s*1.2 # stärkere Anpassung 1;1;1;10..14;$f*$s*1.0+$y/100 # zunehmend stärkere Anpassung 1;1;1;15..19;$f*$s*1.03**$y # um 3% jährlich zunehmend stärkere Anpassung 1;1;1;20..24;$f*$s*0.8 # schwächere Anpassung 1;1;1;25..29;$f*$s*1.0-$y/100 # zunehmend schwächere Anpassung 1;1;1;30..34;$f*$s*0.97**$y # um 3% jährlich zunehmend schwächere Anpassung 1;1;1;35..39;$s # keine Anpassung Sterberate 1;1;1;40..44;$s-0.001 # Reduktion Sterberate um 0,001 1;1;1;45..49;$s-$y/1000 # Reduktion Sterberate um 0,001 pro Jahr 1;1;1;50..54;$s*0.97**$y # Reduktion Sterberate um 3% pro Jahr 1;1;1;55..59;$s*1.03**$y # Erhöhung Sterberate um 3% pro Jahr 1;1;1;60..99; # ohne Gewichtung (entspricht $f*$s) ... 7;2;2;60..99; # ohne Gewichtung (entspricht $f*$s)Formelbestandteile für die Gewichtung:
$f # Faktor für die Anpassung der Sterberate an den Zielwert Lebenserwarung $s # Ausgangssterberate $y # Anzahl Jahre nach Jahr der Ausgangsdatei
Wenn für keine Altersgruppe Anpassung durch Faktor $f
an den Zielwert Lebenserwartung gewählt, dann kann dieser Zielwert
nicht erreicht werden.
Wenn man zwischen den Jahren 2010 und 2030 interpolieren will, so ist dies mit "Eingabedaten/Dynamisieren/Start/Interpolieren Dateien mit Jahr in Spalte 1" möglich.
Das Programm öffnet dann bei einem erneuten Start diese Zielwertdatei ECKLE.CSV mit Werten für die Folgejahre. Die Datei ECKLE.CSV muss im gleichen Verzeichnis sein wie die ausgewählte Datei mit den Sterberaten.
Die Datei strb2010.csv kann auch symbolische Indices enthalten, z.B. für die Typen Sterberaten, die Bevölkerungs- und Geschlechtsgruppen
#Typ Sterberate;Bevölkerungsgruppe;Geschlechtsgruppe;Altersgruppe;Sterberate 1..$NTYS;1..$NBG;1..$NGG;00;0,02 ... 1..$NTYS;1..$NBG;1..$NGG;99;0,3
Wenn die Ausgangsdatei STRB2010.CSV symbolische Indices enthält, dann muss die Datei ECKLE.CSV diese ebenfalls enthalten.
#Jahr;Typ;BG;GG;Ziel_Lebenserwartung 2010;1..$NTYS;1;1;70 2010;1..$NTYS;1;2;75 2010;1..$NTYS;2;1;71 2010;1..$NTYS;2;2;76 ..... 2020;1..$NTYS;2;2;83
Wenn vorhanden, muss die Datei ECKLEW.CSV mit den alterspezifischen Formeln für Gewichte die gleichen symbolischen Indices enthalten:
1..$NTYS;1;1; 0..17;$s # keine Anpassung Sterberate 1..$NTYS;1;1;18..99;$f*$s # Anpassung ohne Gewichtung
Das Programm gibt die Dateien STRB2011.CSV bis STRB2030.CSV, sowie die Datei LEBENSERWARTUNG.CSV, die man zur Kontrolle mit der Datei ECKLE.CSV vergleichen kann, aus.
Bei "Optionen/Systemeinstellungen/Trace-Einstellungen/Protokollumfang Tools" größer als 2 wird ECKLEWE.CSV zur Kontrolle der Gewichte ausgegeben.
Beispiel für häufigen Sonderfall:
STRB2010.CSV und ECKLE.CSV liegen in voller Differenzierung vor und die Gewichte in ECKLEW.CSV sollen für alle Typen Sterberaten, alle Bevölkerungs- und Geschlechtsgruppen gelten.
STRB2000.CSV: #Typ Sterberate;Bevölkerungsgruppe;Geschlechtsgruppe;Altersgruppe;Sterberate 1;1;1;00;0,02 ... 17;2;2;99;0,3 ECKLE.CSV: #Jahr;Typ Sterberate;BG;GG;Ziel_Lebenserwartung 2010; 1;1;1;70 ... 2030;17;2;2;81 ECKLEW.CSV: #! (1..17)(1..2)(1..2) # Typen Sterberaten 1 bis 17, sowie alle Bevölkerungs- und Geschlechtsgruppen #Typ Sterberate;Bevölkerungsgruppe;Geschlechtsgruppe;Altersgruppe;Gewicht $tys;$bg;$gg;00..18;$f*$s*1.001**$y # pro Jahr 1 Promille mehr $tys;$bg;$gg;19..64;$f*$s # konstant ohne Gewichtung $tys;$bg;$gg;65..99;$f*$s*0.9 # geringere Gewichtung
Berechne FRUC-Dateien für mehrere Jahre aus einer gegebenen FRUC-Datei als Ausgangsdatei, einer Datei ECKGZ.CSV mit Zielwerten für die zusammen gefassten Geburtenrate und einer optionalen Datei ECKGZW.CSV mit Gewichten für die Altersgruppen.
Die Berechnung erfolgt in der gleichen Differenzierung wie in der Datei FRUC (Typ, Bevölkerungsgruppe). Wenn z. B. die Zusammengefasste Geburtenrate (TFR Total Fertility Rate) der Ausgangsdatei für einen bestimmten Typ/BG 1.7 ist, dann kann man den Zielwert z.B. 1.6 angeben und alle Geburtenraten von AG15 bis AG 44 werden mit dem Faktor F = 1.6/1.7 multipliziert.
Wenn die Form der Geburtenraten, d.h. einzelne Altersgruppen in unterschiedlichem Maß angepasst werden sollen, z.B. weil immer häufiger Kinder von älteren Frauen geboren werden, dann können diese Veränderungen durch Vorgabe von Formeln zur Modellierung der Veränderungen gesteuert werden. Dafür können in der Datei ECKGZW.CSV Formeln zur Änderung der Fruchtbarkeit vorgegeben werden. Die Differenzierung der Datei ECKGZW.CSV muss der Datei FRUC(NTYG, BG, AG) entsprechen.
Eine Änderung der Form der Geburtenkurve erreicht man transparenter und
einfacher durch Einsatz der Hadwiger-Funktion
Auswahl einer Ausgangsdatei mit Geburtenraten (z.B. fruc2000.csv). Die Ausgangsdatei wird gelesen, fehlende Werte werden als 0 angenommen. Die Zusammengefasste Geburtenrate (TFR) für dieses Jahr wird berechnet und in eine Datei ausgegeben (z.B. fruc2000gz.csv).
Das Programm öffnet dann eine Zielwertdatei ECKGZ.CSV mit Werten für die Folgejahre. Die Datei ECKGZ.CSV muss im gleichen Verzeichnis sein wie die ausgewählte Datei mit den Geburtenraten.
Beispiel 1:
Die Ausgangs-FRUC-Datei enthält symbolische Indices 1..$NTYG
für alle Type Geburtenraten und diese sollen in die berechneten
FRUC-Dateien übernommen werden.
Es sollen Zielwerte für 20 Jahre vorgegeben werden.
FRUC2000.CSV: #TYG;BG;AG;Rate 1..$NTYG;1;15;0,012 ... 1..$NTYG;1;44;0,034 1..$NTYG;2;15;0,017 ... 1..$NTYG;2;44;0,037 ECKGZ.CSV: #Jahr;TYG;BG;Ziel_Geburtenziffer 2001;1..$NTYG;1;1,7 2001;1..$NTYG;2;2,1 ..... 2010;1..$NTYG;1;1,21 2010;1..$NTYG;2;1,51 # Abkürzung für Jahresbereich 2011 bis 2020 2011..2020;1..$NTYG;2;1,2 2011..2020;1..$NTYG;2;1,5
Wenn vorhanden, wird die Datei ECKGZW.CSV mit Formeln zur Anpassung der Geburtenrate vor der Anpassung an den Zielwert TFR gelesen
Formelbestandteile:
# Variablen $tyg # Typ Geburtenrate $bg # Bevölkerungsgruppe $gg # Geschlechtsgruppe $ag # Altersgruppe $y # Anzahl Jahre nach Ausgangsjahr FRUC # Funktion "f" - Geburtenrate aus Ausgangsdatei FRUC $f->() # Rate($ag) $f->()*$c->() # Rate($ag) und keine Anpassung an Zielwert $f->(0) # Rate($ag) $f->(1) # Rate($ag-1) (Mütter werde 1 Jahr älter) $f->(1.25) # 0.75*Rate($ag-1) + 0.25*Rate($ag-2) (5/4 Jahr älter) $f->(-1) # Rate($ag+1) (Mütter werde 1 Jahr jünger) $f->($y) # Müttter werden jedes Jahr ein Jahr älter $f->(3*$y/12) # Mütter werden jedes Jahr 3 Monate älter ECKGZW.CSV #TYG;BG;AG;Formel für Rate 1..$NTYG;1;15..30;$f->()-0.001*$y # jährliche absolute Reduktion 1..$NTYG;1;31..45;$f->()+0.001*$y # jährliche absolute Erhöhung 1..$NTYG;2;15..30;$f->()*0.98**$y # jährliche Reduktion um 2% 1..$NTYG;2;31..45;$f->()*1.02**$y # jährliche Erhöhung um 2% 1..$NTYG;2;46..47;$f->() # konstant 1..$NTYG;2;48..49;$f->()*$c->() # konstant, keine Anpassung
Achtung: Konstanten in ECKGZW.CSV mit Dezimalpunkt nicht Dezimalkomma!
Der Faktor $c->()
hat den Wert 1, ändert die Rate also nicht,
nimmt aber als Nebeneffekt die Altersgruppe von der Anpassung an die TFR aus.
Achtung: die Dateien FRUC, ECKGZ, ECKGZW mussen für die Indices "Typ Geburtenrate" und "Bevölkerungsgruppe" identisch aufgebaut sein, d.h. entweder bei allen Symbolisch wie 1..$NTYG oder 1..$NBG oder bei allen explizit 1, 2, ...
Beispiel 2:
Sie haben eine FRUC-Datei für das Ausgangsjahr mit konkreten Indices für 16 Typen Geburtenraten und 2 Bevölkerungsgruppen
FRUC2001.CSV: #TYG;BG;AG;Rate 1;1;15;0,023 ... 16;2;44;0,0234
Die Datei ECKGZ für die Eckwerte der Zusammengefaßten Geburtenraten bestimmen sie entweder mit "Indikatoren" oder sie Starten das Programm und wählen die Datei FRUC2001.CSV. Die Ausgangsdatei wird gelesen und die Zusammengefaßten Geburtenraten werden in eine Datei ZGZ.CSV ausgegeben. Benennen Sie diese in ECKGZ.CSV um:
ECKGZ.CSV #Jahr;TYG;BG;Ziel-TFR 2001; 1;1;1,451234 ... 2001;16;2;1,532134
Sie erstellen eine Annahme für die TFR zum Ende der Prognose und halten diese in ECKGZ fest.
ECKGZ.CSV #Jahr;TYG;BG;Ziel-TFR 2001; 1;1;1,451234 ... 2001;16;2;1,532134 2030; 1;1;1,380000 ... 2030;16;2;1,450000
Mit "Eingabedaten/Dynamisieren/Interpolation Dateien mit Jahr in Spalte 1" interpolieren sie die Werte für TFR in den Zwischenjahren 2002 bis 2029.
Für die optionale Datei ECKGZW haben sie folgende Optionen
ECKGZW.CSV #TYG;B;AG;Formel 1;1;15;$f->() ... 16;2;44;$f->()
ECKGZW.CSV #! (1..16) # 16 Typen Geburtenraten #TYG;B;AG;Formel $tyg;1;15;$f->() ... $tyg;2;44;$f->()
ECKGZW.CSV #! (1..16)(1..2) # 16 Typen Geburtenraten, 2 Bevölkerungsgruppen #TYG;B;AG;Formel $tyg;$bg;15;$f->() ... $tyg;$bg;44;$f->()
17
ein Intervall von Altersgruppen, z.B. 17..21
angeben
Beispiel 4:
"Aggressive" Erhöhung des Geburtsalters
gleichbleibender Geburtenziffer:
Lineare Transformation der Gaußkurve Geburtenrate entspricht einer
Rechtsverschiebung (Erhöhung Mittelwert: Mütter werden älter) und
Reduktion der Streueung der Gaußkurve:
ECKGZW.CSV #! (1..16)(1..2) # 16 Typen Geburtenraten, 2 Bevölkerungsgruppen $tyg;$bg;0..99;$f->()*(($ag-15)*0.03)**$y # Mütter werden älter
Beispiel 4:
mit folgender Formel kann man die Geburtenrate jedes Jahr um 1/3 Jahr
nach rechts verschieben, ohne die Form der Geburtenpyramide zu beeinflussen:
ECKGZW.CSV #! (1..16)(1..2) # 16 Typen Geburtenraten, 2 Bevölkerungsgruppen $tyg;$bg;15..59;$f->($y/3)
und die letzte etwas kompliziertere Formel läßt die Geburtenrate der Altersgruppe 15 konstant und erhöht Mittelwert und Streuung.
ECKGZW.CSV #! (1..16)(1..2) # 16 Typen Geburtenraten, 2 Bevölkerungsgruppen $tyg;$bg;15..59;$f->(($ag-15)*$y/60)
Das Programm gibt die Datei ZGZ.CSV aus, die Sie zur Kontrolle mit ECKGZ.CSV vergleichen können.
Bei "Optionen/Systemeinstellungen/Trace-Einstellungen/Protokollumfang Tools" größer als 2 wird ECKGZWE.CSV zur Kontrolle der Gewichte ausgegeben.