Zum Inhalt springen

Diskussion:Statistik: Regressionsanalyse

Seiteninhalte werden in anderen Sprachen nicht unterstützt.
Abschnitt hinzufügen
Aus Wikibooks
Letzter Kommentar: vor 7 Tagen von 80.123.172.54 in Abschnitt Interessantes Beispiel von Regression mit systematischem Fehler

Aus w:Regressionsanalyse in Wikipedia reinkopiert. Wird noch etwas geändert. --Philipendula 16:39, 7. Nov 2004 (UTC)

Ein hohes Bestimmtheitsmaß R^2 genügt nicht, da noch ein Signifikanztest für die Regressionsanalyse durchgeführt werden muss. Dies wird hier nicht erwähnt oder erklärt.

Der Zusammenhang Duenger/Ertrag ist nicht linear. Es gibt eine optimale Duengergabe, darueber und darunter nimmt der Ertrag ab. Kleine Teilbereiche sind natuerlich naeherungsweise linear. Linear waere etwa die Beziehung Strom/Spannung bei konstantem Widerstand, oder Laufzeit/Entfernung bei Echolot/Laser Entfernungsmessungen.

Bei der Multiple Regression kann es sein das da zwei variablen vertauscht wurden (mort unf fert)??? Das ist nämlich irgentwie nicht konsistent....

Multiple Regression

[Bearbeiten]

Bei einer Lebenserwartung von 18,79 Jahren, 44,46 Kinder zu gebären,

bei 9 Monaten Tragzeit ist schon erstaunlich.

Auch die Sterblichkeit pro 1000 Einwohner dürfte nach vorsichtigen Schätzungen

bei 100% liegen.

Auch die Geburtenrate hat die Einheit pro Einwohner und Jahr.

Wie kann man so etwas veröffentlichen? Da ist kein Fehler drin, das ist ein einziger Fehler!

Was wird hier auf 4 Stellen hinter dem Komma ausgerechnet?

Vielleicht sollten auch Mathematiker einmal mit Masszahl UND Einheit rechnen,

oder ist denen egal was rauskommt, Hauptsache irgendeine Zahl, auch wenn diese

nichts aussagt und falsch ist?

Da hat doch der Autor die Zahlenkollone in sein Matheprogramm eingetippst und sich

beim Abschreiben der Arithmetik soviel Gedanken über die Schwangerschaft gemacht

wie sein Computerprogramm.

Diesen Teil (den Rest hab ich mir erst gar nicht mehr angesehen) bitte löschen

und dringend persönlich überarbeiten, und nicht stumpfsinnig irgendwelche Zahlen

und Gleichungen vom Computer abschreiben!

Schnucki, schau dir doch mal die Variablendefinitionen an. --Philipendula ? 09:37, 22. Mär. 2009 (CET)Beantworten
Klar sollte man sich die ansehen. :-) Aber eine Durchschn. Kinderzahl pro gebärfähiger Frau zwischen 8,90 und 44,46 ist unwahrscheinlich. Da ist wohl das Komma verrutscht. Der Begriff "Sterblichkeit" ist unpassend. Auch ich glaube, dass von 1000 Einwohnern alle 1000 sterblich sind. LG -- Klaus 09:45, 22. Mär. 2009 (CET)Beantworten
Ups, hatte das mit birth velwechsert. Muss ich tatsächlich noch mal recherchieren. --Philipendula ? 10:30, 22. Mär. 2009 (CET)Beantworten

So, recherchiert. Ich hatte die Variablenüberschriften durcheinander gebracht. Vermutlich wollte ich die Spalten vertauschen und hatte das dann vergessen. Die Auswertungen stimmen aber. Bei Y sind noch kleine Inkonsistenzen, die ich beheben muss. --Philipendula ? 12:20, 22. Mär. 2009 (CET)Beantworten

Interessantes Beispiel von Regression mit systematischem Fehler

[Bearbeiten]

Die Daten (könnten z.B. Geburtsdaten einer Tierpopulation sein) weisen auf eine Kombination einer linearen und einer Sinus-Funktion hin (genauso wie in einem Beispiel von dir, in diesem Fall mit Periode von einem Jahr). Die Sinus Funktion hat dabei ausgeprägte Maxima aber läuft relativ normal bei den Minima. Interessant ist, dass die Regression (z.B. mit Hilfe von R-Statistik) ein Ergebnis fürs Jahr 2013 liefert, dass außerhalb der statistischen Grenzen liegt, wenn wir das Kalenderjahr (und manche andere Intervalle), und innerhalb der statistischen Grenzen, wenn wir z.B. das Intervall September-August (oder manche andere) benutzen. So ein Unterschied mit den gleichen Daten weist auf einen systematischen Fehler hin. Eine Darstellung der Daten kann diesen Fehler aufzeigen. Wenn wir das Kalenderjahr benutzen, schließen wir zwei (genauer: 1 und 1/2) Maxima der Sinus Funktion in der Berechnung von einem Jahr (2013) ein, was ein eindeutiger systematischer Fehler ist. In beiden Fällen gibt es in 2012 im "Mean" ein Minimum, fast an der unteren statistischen Grenze (aber noch innerhalb der Grenze). Dieses Beispiel könnte benutzt werden, um aufzuzeigen, wie notwendig die kritische Haltung bei der Analyse der Daten ist.


Jan Feb Mar Apr May Jun Jul Aug Sep Oct Nov Dec Total Population Mean
1994 1 166 159 158 149 153 146 146 152 154 168 169 149 1.870 177.700 10,52
1995 2 180 163 151 141 151 152 144 161 154 176 186 152 1.913 178.200 10,74
1996 3 166 154 145 138 149 145 144 153 148 170 174 147 1.836 178.800 10,27
1997 4 157 145 149 140 143 144 140 150 149 166 164 157 1.808 179.500 10,07
1998 5 187 159 149 143 144 142 138 143 143 161 168 147 1.829 180.200 10,15
1999 6 164 148 148 143 148 146 144 151 152 162 169 154 1.835 181.000 10,14
2000 7 175 156 145 141 144 140 144 150 150 166 167 151 1.836 182.300 10,07
2001 8 167 157 148 141 147 141 142 148 149 168 188 158 1.862 183.700 10,14
2002 9 160 147 147 136 138 136 134 149 148 158 171 146 1.779 185.100 9,61
2003 10 161 150 146 137 145 140 142 149 149 172 173 145 1.819 186.800 9,74
2004 11 163 150 146 134 144 140 142 152 144 164 169 168 1.827 188.300 9,70
2005 12 175 154 149 136 143 141 139 150 146 169 176 159 1.849 189.700 9,75
2006 13 171 158 144 137 139 139 137 146 145 159 162 148 1.798 191.100 9,41
2007 14 154 144 148 136 148 144 140 149 145 161 173 162 1.818 192.900 9,42
2008 15 173 155 147 137 142 136 140 145 147 159 174 156 1.826 194.900 9,37
2009 16 163 151 143 134 145 143 137 150 151 169 186 161 1.849 197.000 9,39
2010 17 165 155 150 137 139 140 138 152 150 165 176 167 1.851 199.900 9,26
2011 18 189 156 139 133 149 139 139 149 142 160 167 150 1.830 202.400 9,04
2012 19 156 147 143 133 139 141 137 151 149 158 167 151 1.791 204.600 8,75
2013 20 171 211 178 149 142 139 135 146 164 204 204 151 2.014 206.600 9,75
2014 21 156 146 145 132 140 141 143 151 153 171 178 165 1.842 207.600 8,87
Sep Oct Nov Dec Jan Feb Mar Apr May Jun Jul Aug Total Population Mean
1995 1 154 168 169 149 180 163 151 141 151 152 144 161 1.884 178.200 10,57
1996 2 154 176 186 152 166 154 145 138 149 145 144 153 1.864 178.800 10,43
1997 3 148 170 174 147 157 145 149 140 143 144 140 150 1.810 179.500 10,08
1998 4 149 166 164 157 187 159 149 143 144 142 138 143 1.845 180.200 10,24
1999 5 143 161 168 147 164 148 148 143 148 146 144 151 1.816 181.000 10,03
2000 6 152 162 169 154 175 156 145 141 144 140 144 150 1.838 182.300 10,08
2001 7 150 166 167 151 167 157 148 141 147 141 142 148 1.832 183.700 9,97
2002 8 149 168 188 158 160 147 147 136 138 136 134 149 1.818 185.100 9,82
2003 9 148 158 171 146 161 150 146 137 145 140 142 149 1.802 186.800 9,65
2004 10 149 172 173 145 163 150 146 134 144 140 142 152 1.820 188.300 9,67
2005 11 144 164 169 168 175 154 149 136 143 141 139 150 1.843 189.700 9,72
2006 12 146 169 176 159 171 158 144 137 139 139 137 146 1.833 191.100 9,59
2007 13 145 159 162 148 154 144 148 136 148 144 140 149 1.790 192.900 9,28
2008 14 145 161 173 162 173 155 147 137 142 136 140 145 1.830 194.900 9,39
2009 15 147 159 174 156 163 151 143 134 145 143 137 150 1.817 197.000 9,22
2010 16 151 169 186 161 165 155 150 137 139 140 138 152 1.859 199.900 9,30
2011 17 150 165 176 167 189 156 139 133 149 139 139 149 1.868 202.400 9,23
2012 18 142 160 167 150 156 147 143 133 139 141 137 151 1.784 204.600 8,72
2013 19 149 158 167 151 171 211 178 149 142 139 135 146 1.915 206.600 9,27
2014 20 164 204 204 151 156 146 145 132 140 141 143 151 1.897 207.600 9,14
Hier auch der Code für R-Statistic für die Bearbeitung der Daten.
library(readxl)
rs1 <- read_excel("Dokumente/rs1.xlsx")
rs1f <- data.frame(rs1)
modelA<- lm(mort~ year, data= rs1)
a<- length(rs1$year)
yearValues <- seq(1, a, 1)
Apredict <- predict( modelA, list(year=yearValues))
Apredictf <- data.frame(Apredict)
ConfInSwed <- predict(modelA,interval = "confidence")
ConfInSwed <- data.frame(ConfInSwed)
ConfInSwed$year <- rs1$year
ConfInSwed$year2 <- ConfInSwed$year^2
modelUpCI<- lm(upr~ year+year2, data= ConfInSwed)
LineUpCI <- predict( modelUpCI, list(year=yearValues,year2=yearValues^2))
modelDownCI<- lm(lwr~ year+year2, data= ConfInSwed)
LineDownCI <- predict( modelDownCI, list(year=yearValues,year2=yearValues^2))
rs1f$pred <- Apredictf$Apredict
rs1f <- transform(rs1f, PercPred = 100*(mort-pred) / pred)
rs1f$downCI <- LineDownCI
rs1f$upCI <- LineUpCI
rs1f <- transform(rs1f, PercDownCI = 100*(mort-upCI) / upCI)
rs1f <- transform(rs1f, PercUpCI = 100*(mort-downCI) / downCI)
PredInSwed <- predict(modelA,interval = "prediction")
PredInSwed <- data.frame(PredInSwed)
PredInSwed$year <- rs1$year
PredInSwed$year2 <- PredInSwed$year^2
modelUpPI<- lm(upr~ year+year2, data= PredInSwed)
LineUpPI <- predict( modelUpPI, list(year=yearValues,year2=yearValues^2))
modelDownPI<- lm(lwr~ year+year2, data= PredInSwed)
LineDownPI <- predict( modelDownPI, list(year=yearValues,year2=yearValues^2))
rs1f$downPI <- LineDownPI
rs1f$upPI <- LineUpPI
rs1f <- transform(rs1f, PercDownPI = 100*(mort-upPI) / upPI)
rs1f <- transform(rs1f, PercUpPI = 100*(mort-downPI) / downPI)
rs1f <- transform(rs1f, DifPIMCI = (upPI-downPI) - (upCI-downCI))
yearList<-seq(2021-a, 2020, 1)
rs1$year<-yearList
rs1f$year<- yearList
plot(rs1$year,rs1$mort,xlab="Year",ylab="Mortality")
lines <- lines(yearList, Apredict, col=2, lwd=2)
lines <- lines(yearList, LineUpCI, col=2, lwd=3, lty=2)
lines <- lines(yearList, LineDownCI, col=2, lwd=3, lty=2)
lines <- lines(yearList, LineUpPI, col=2, lwd=2, lty=3)
lines <- lines(yearList, LineDownPI, col=2, lwd=2, lty=3)
write.table(rs1f, col.names = NA)
summary(modelA)

80.123.172.54 14:23, 13. Jan. 2025 (CET)Beantworten