Analyse von Prozentzahlen
Moderator: schubbiaschwilli
-
- Beiträge: 25
- Registriert: Di Aug 04, 2020 3:00 pm
Analyse von Prozentzahlen
Hallo zusammen,
ich würde gerne eine Diskriminanzanalyse durchführen und muss dafür im Vorhinein einen Beweis liefern, dass die nachfolgenden Daten sich im Zeitablauf nicht verändern.
2010 2011 2012 2013 2014 2015 2016
83,2310838445808 81,9978821037769 81,1850946854001 80,1006289308176 83,3221401387956 81,5210812991729 81,105722599418
16,7689161554192 18,0021178962231 18,8149053145999 19,8993710691824 16,6778598612044 18,4789187008271 18,894277400582
2017 2018 2019
80,2167074449493 81,4006888633754 80,0769634423649
19,7832925550507 18,5993111366246 19,9230365576351
Wie zu erkennen ist handelt es sich um Prozentzahlen, was die Sache deutlich erschwert. Folglich ist ein Chi-Quadrat-Unabhängigkeitstest nicht mehr möglich. Darüber hinaus weiß ich nicht ob der prop.test dafür geeignet ist. Meiner Meinung nach ist der nur für die Vierfeldermatrix geeignet.
Weiß jemand aus der Community was ich hier machen könnte?
Ich suche mittlerweile seit 3 Tagen nach einem geeigneten Verfahren und komme einfach nicht weiter.
Möglicherweise könnte eine Diskriminanzanalyse mit Dummys auch helfen, allerdings weiß ich nicht wie ich aus den vorliegenden Daten eine solche erstellen kann.
Ich bin dankbar für jeden Tipp.
Vielen Dank für eure Hilfe!
ich würde gerne eine Diskriminanzanalyse durchführen und muss dafür im Vorhinein einen Beweis liefern, dass die nachfolgenden Daten sich im Zeitablauf nicht verändern.
2010 2011 2012 2013 2014 2015 2016
83,2310838445808 81,9978821037769 81,1850946854001 80,1006289308176 83,3221401387956 81,5210812991729 81,105722599418
16,7689161554192 18,0021178962231 18,8149053145999 19,8993710691824 16,6778598612044 18,4789187008271 18,894277400582
2017 2018 2019
80,2167074449493 81,4006888633754 80,0769634423649
19,7832925550507 18,5993111366246 19,9230365576351
Wie zu erkennen ist handelt es sich um Prozentzahlen, was die Sache deutlich erschwert. Folglich ist ein Chi-Quadrat-Unabhängigkeitstest nicht mehr möglich. Darüber hinaus weiß ich nicht ob der prop.test dafür geeignet ist. Meiner Meinung nach ist der nur für die Vierfeldermatrix geeignet.
Weiß jemand aus der Community was ich hier machen könnte?
Ich suche mittlerweile seit 3 Tagen nach einem geeigneten Verfahren und komme einfach nicht weiter.
Möglicherweise könnte eine Diskriminanzanalyse mit Dummys auch helfen, allerdings weiß ich nicht wie ich aus den vorliegenden Daten eine solche erstellen kann.
Ich bin dankbar für jeden Tipp.
Vielen Dank für eure Hilfe!
Re: Analyse von Prozentzahlen
Vielleicht eine lineare Regression über die Zeit?
---
Programmiere stets so, dass die Maxime Deines Programmierstils Grundlage allgemeiner Gesetzgebung sein könnte
Programmiere stets so, dass die Maxime Deines Programmierstils Grundlage allgemeiner Gesetzgebung sein könnte
-
- Beiträge: 25
- Registriert: Di Aug 04, 2020 3:00 pm
Re: Analyse von Prozentzahlen
Ok was wäre deiner Meinung nach die abhängige Variable?
Wie würde dann der Datensatz aussehen?
Vielen Dank schon einmal
Wie würde dann der Datensatz aussehen?
Vielen Dank schon einmal
Re: Analyse von Prozentzahlen
Deine Werte um 80% und Deine Werte um 20% scheinen sich je zu 100% aufzuaddieren. Beide enthalten damit gleich viel Information und es reicht, eine von beiden Reihen zu untersuchen. Im einfachsten Fall sähe das dann etwa so aus:
fleder <- structure(list(Jahr = c(2010, 2011, 2012, 2013, 2014, 2015, 2016
), Werte = c(83.2310838445808, 81.9978821037769, 81.1850946854001,
80.1006289308176, 83.3221401387956, 81.5210812991729, 81.105722599418
), KomplementaereWerte = c(16.7689161554192, 18.0021178962231,
18.8149053145999, 19.8993710691824, 16.6778598612044, 18.4789187008271,
18.894277400582)), class = "data.frame", row.names = c("V1",
"V2", "V3", "V4", "V5", "V6", "V7"))
fit <- lm(Werte ~ Jahr, data = fleder)
summary(fit)
library(ggplot2)
ggplot(fleder, aes(x=Jahr, y=Werte))+geom_point()+stat_smooth(method="lm")
fleder <- structure(list(Jahr = c(2010, 2011, 2012, 2013, 2014, 2015, 2016
), Werte = c(83.2310838445808, 81.9978821037769, 81.1850946854001,
80.1006289308176, 83.3221401387956, 81.5210812991729, 81.105722599418
), KomplementaereWerte = c(16.7689161554192, 18.0021178962231,
18.8149053145999, 19.8993710691824, 16.6778598612044, 18.4789187008271,
18.894277400582)), class = "data.frame", row.names = c("V1",
"V2", "V3", "V4", "V5", "V6", "V7"))
fit <- lm(Werte ~ Jahr, data = fleder)
summary(fit)
library(ggplot2)
ggplot(fleder, aes(x=Jahr, y=Werte))+geom_point()+stat_smooth(method="lm")
---
Programmiere stets so, dass die Maxime Deines Programmierstils Grundlage allgemeiner Gesetzgebung sein könnte
Programmiere stets so, dass die Maxime Deines Programmierstils Grundlage allgemeiner Gesetzgebung sein könnte
-
- Beiträge: 25
- Registriert: Di Aug 04, 2020 3:00 pm
Re: Analyse von Prozentzahlen
Hallo Big Ben,
vielen Dank für deine Hilfe, du hast mir sehr weitergeholfen.
Du scheinst wirklich ein sehr fundiertes Wissen zu haben.
Nach Eingabe aller Daten habe ich den folgenden Output erhalten
Call:
lm(formula = Werte ~ Jahr, data = fleder)
Residuals:
Min 1Q Median 3Q Max
-1.64422 -0.57593 -0.08336 0.61824 1.79666
Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) 523.3257 227.5221 2.300 0.0505 .
Jahr -0.2194 0.1129 -1.942 0.0880 .
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
Residual standard error: 1.026 on 8 degrees of freedom
Multiple R-squared: 0.3204, Adjusted R-squared: 0.2355
F-statistic: 3.772 on 1 and 8 DF, p-value: 0.08804[/i][/i]
Da der p-Wert für die Variable Jahr nicht signifikant ist leite ich daraus ab, dass es keinen Einfluss der Variable auf die Werte gibt.
Ich habe in diesem Fall bewusst auf konsistente Werte zurückgegriffen. Leider ist das in anderen Zeitreihen nicht immer der Fall z.B. schwanken die Werte der nachfolgenden Zeitreihe stärker.
2010 2011 2012 2013 2014 2015 2016 2017 2018 2019
93.24 89.00 92.37 88.13 86.77 88.75 82.89 86.60 84.06 84.98
6.76 11.00 7.63 11.87 13.23 11.25 17.11 13.40 15.94 15.02
Kennst du eine Möglichkeit, wie man gezielt Jahre identifizieren kann die besonders stark abweichen um diese im Anschluss aus dem Datensatz zu eliminieren?
Vielen Dank noch einmal für deine Hilfe!
vielen Dank für deine Hilfe, du hast mir sehr weitergeholfen.
Du scheinst wirklich ein sehr fundiertes Wissen zu haben.
Nach Eingabe aller Daten habe ich den folgenden Output erhalten
Call:
lm(formula = Werte ~ Jahr, data = fleder)
Residuals:
Min 1Q Median 3Q Max
-1.64422 -0.57593 -0.08336 0.61824 1.79666
Coefficients:
Estimate Std. Error t value Pr(>|t|)
(Intercept) 523.3257 227.5221 2.300 0.0505 .
Jahr -0.2194 0.1129 -1.942 0.0880 .
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
Residual standard error: 1.026 on 8 degrees of freedom
Multiple R-squared: 0.3204, Adjusted R-squared: 0.2355
F-statistic: 3.772 on 1 and 8 DF, p-value: 0.08804[/i][/i]
Da der p-Wert für die Variable Jahr nicht signifikant ist leite ich daraus ab, dass es keinen Einfluss der Variable auf die Werte gibt.
Ich habe in diesem Fall bewusst auf konsistente Werte zurückgegriffen. Leider ist das in anderen Zeitreihen nicht immer der Fall z.B. schwanken die Werte der nachfolgenden Zeitreihe stärker.
2010 2011 2012 2013 2014 2015 2016 2017 2018 2019
93.24 89.00 92.37 88.13 86.77 88.75 82.89 86.60 84.06 84.98
6.76 11.00 7.63 11.87 13.23 11.25 17.11 13.40 15.94 15.02
Kennst du eine Möglichkeit, wie man gezielt Jahre identifizieren kann die besonders stark abweichen um diese im Anschluss aus dem Datensatz zu eliminieren?
Vielen Dank noch einmal für deine Hilfe!
Re: Analyse von Prozentzahlen
Hallo Fledermaus,
Übrigens ist Code hier im Forum viel besser zu lesen, wenn man Code-Tags verwendet. Sieht dann etwa so aus:
LG,
Bernahrd
Diese Zeitreihe hat jetzt aber einen wirklich klaren Trend, der auch ohne Regression zu sehen ist und der mit p = .003 auch rechnerisch nicht wegzudiskutieren ist. 68% der Varianz lassen sich durch die Jahreszahl aufklären. Da jetzt einzelne Werte zu eliminieren um diese Gerade flach zu biegen wäre IMHO nicht seriös.Fledermaus hat geschrieben: ↑Di Aug 04, 2020 11:13 pm Da der p-Wert für die Variable Jahr nicht signifikant ist leite ich daraus ab, dass es keinen Einfluss der Variable auf die Werte gibt.
Ich habe in diesem Fall bewusst auf konsistente Werte zurückgegriffen. Leider ist das in anderen Zeitreihen nicht immer der Fall z.B. schwanken die Werte der nachfolgenden Zeitreihe stärker.
2010 2011 2012 2013 2014 2015 2016 2017 2018 2019
93.24 89.00 92.37 88.13 86.77 88.75 82.89 86.60 84.06 84.98
6.76 11.00 7.63 11.87 13.23 11.25 17.11 13.40 15.94 15.02
Wie gesagt, eliminieren von Daten muss immer sehr gut gerechtfertigt sein. Aber nehmen wir an, Deine wahre Zeitreihe wäre konstant und durch Messfehler etc gibt es Abweichungen davon. Eine Möglichkeit wäre es, den Durchschnitt aller Messwerte als Schätzer für den wahren Wert zu nehmen und für alle Messwerte den Abstand von diesem Wert zu bestimmen. Dann könntest Du den Wert mit der größten absoluten Abweichung eliminieren und das Verfahren von vorne starten, bis Du mit der Elimination zufrieden bist.Kennst du eine Möglichkeit, wie man gezielt Jahre identifizieren kann die besonders stark abweichen um diese im Anschluss aus dem Datensatz zu eliminieren?
Übrigens ist Code hier im Forum viel besser zu lesen, wenn man Code-Tags verwendet. Sieht dann etwa so aus:
Code: Alles auswählen
ausgedacht <- data.frame(Jahr = 2010:2020,
Wert = c(9, 8.3, 9.1, 5, 8.7, -20, 9,
8, 8.5, 7.5, 10))
# So sehen die Werte aus
par(mfrow=c(2,1), mar = c(5,4.1,.5,.5))
plot(ausgedacht$Jahr, ausgedacht$Wert, ylab = "Wert")
# Das ist der Mittelwert
fit <- lm(Wert ~ 1, data = ausgedacht)
abline(fit, lty=2)
# Jetzt plotten wir die absolute Abweichung vom Mittelwert pro Jahr
print(abs(fit$residuals))
plot(ausgedacht$Jahr, abs(fit$residuals), type="h", ylab = "Abweichung")
# Absolute Abweichungen absteigend sortiert:
sort(abs(fit$residuals), decreasing = TRUE)
# demnach wäre Beobachtung Nr. 6 als erste zu eliminieren,
# dann nochmal alles von vorn
Bernahrd
---
Programmiere stets so, dass die Maxime Deines Programmierstils Grundlage allgemeiner Gesetzgebung sein könnte
Programmiere stets so, dass die Maxime Deines Programmierstils Grundlage allgemeiner Gesetzgebung sein könnte
-
- Beiträge: 25
- Registriert: Di Aug 04, 2020 3:00 pm
Re: Analyse von Prozentzahlen
Hallo Bernhard,
ja da hast du vollkommen recht, bei dieser Zeitreihe gibt es einen eindeutigen Trend, der nicht wegzudiskutieren ist.
Mal schauen wie ich das bei meinen übrigen Kategorien mache.
Ich bin mittlerweile einen Schritt weiter mit meiner Auswertung und führe die angesprochene Diskriminanzanalyse durch.
Eine Voraussetzung für diese ist die multivariante Normalverteilung.
Bislang kann ich diese nur durch den nachfolgenden Befehl und damit durch beschreibende Statistik belegen.
Weißt du wie man bei dem nachfolgenden Datensatz die multivariante Normalverteilung nachweisen kann?
Kategorie_1 Kategorie_2 Kategorie_3 Kategorie_4 Kategorie_5
6,61420273561926 7,17631628255574 6,98894510024358 3,16657298107551 2,88551620760727
7,10882408995617 6,82294644558796 7,94739851343625 7,03259005145798 2,66819134743663
7,37593473827328 7,73283480625425 9,22841604350782 5,7443915703603 3,11012916383413
8,61814967589865 8,01414260459635 9,79670005892752 5,27401296405421 3,34413671184443
10,0799796876984 7,97257839278913 8,65811857306081 5,43354068807922 2,81833185222801
11,0995610995611 8,11965811965812 7,57680757680758 5,7981057981058 2,72580272580273
12,9813514168079 7,82271736497941 7,18091547590216 6,18793896827319 2,34923710341487
14,0708915145005 9,40446353980189 6,77885189163385 7,05334765485141 2,30337749134742
13,0896226415094 9,02777777777778 6,22379454926625 7,84853249475891 2,30607966457023
13,845563794426 9,12810023012018 6,1493224239325 7,55561237535157 2,18614165175147
Ich habe es mal mit den Code Tags versucht, hoffentlich hat es geklappt .
Vielen Dank schon einmal.
Liebe Grüße
Tobi
ja da hast du vollkommen recht, bei dieser Zeitreihe gibt es einen eindeutigen Trend, der nicht wegzudiskutieren ist.
Mal schauen wie ich das bei meinen übrigen Kategorien mache.
Ich bin mittlerweile einen Schritt weiter mit meiner Auswertung und führe die angesprochene Diskriminanzanalyse durch.
Eine Voraussetzung für diese ist die multivariante Normalverteilung.
Bislang kann ich diese nur durch den nachfolgenden Befehl und damit durch beschreibende Statistik belegen.
Code: Alles auswählen
library(ggplot2); library(GGally)
ggally_mysmooth <- function(data, mapping, ...){
ggplot(data = data, mapping=mapping) +
geom_density(mapping = aes_string(colour=variablen[1]), fill=NA)}
ggpairs(data2, columns=match(variablen[-1],names(data2)), diag = list(continuous = ggally_mysmooth), ggplot2::aes_string(colour=variablen[1]))
Kategorie_1 Kategorie_2 Kategorie_3 Kategorie_4 Kategorie_5
6,61420273561926 7,17631628255574 6,98894510024358 3,16657298107551 2,88551620760727
7,10882408995617 6,82294644558796 7,94739851343625 7,03259005145798 2,66819134743663
7,37593473827328 7,73283480625425 9,22841604350782 5,7443915703603 3,11012916383413
8,61814967589865 8,01414260459635 9,79670005892752 5,27401296405421 3,34413671184443
10,0799796876984 7,97257839278913 8,65811857306081 5,43354068807922 2,81833185222801
11,0995610995611 8,11965811965812 7,57680757680758 5,7981057981058 2,72580272580273
12,9813514168079 7,82271736497941 7,18091547590216 6,18793896827319 2,34923710341487
14,0708915145005 9,40446353980189 6,77885189163385 7,05334765485141 2,30337749134742
13,0896226415094 9,02777777777778 6,22379454926625 7,84853249475891 2,30607966457023
13,845563794426 9,12810023012018 6,1493224239325 7,55561237535157 2,18614165175147
Ich habe es mal mit den Code Tags versucht, hoffentlich hat es geklappt .
Vielen Dank schon einmal.
Liebe Grüße
Tobi
Re: Analyse von Prozentzahlen
Für den Code hat es gut geklappt - für die Tabelle mit Zahlen kannst Du die auch gut nutzen,Fledermaus hat geschrieben: ↑Do Aug 06, 2020 1:21 pmIch habe es mal mit den Code Tags versucht, hoffentlich hat es geklappt .
Damit kenne ich mich nicht aus, aber das hier sieht vielversprechend aus:Weißt du wie man bei dem nachfolgenden Datensatz die multivariante Normalverteilung nachweisen kann?
https://cran.r-project.org/web/packages ... es/MVN.pdf
ausführlicher, dafür auch zitierfähig: https://journal.r-project.org/archive/2 ... rarsiz.pdf
alternativ:
https://cran.r-project.org/web/packages/mvnormtest/
LG,
Bernhard
---
Programmiere stets so, dass die Maxime Deines Programmierstils Grundlage allgemeiner Gesetzgebung sein könnte
Programmiere stets so, dass die Maxime Deines Programmierstils Grundlage allgemeiner Gesetzgebung sein könnte
Re: Analyse von Prozentzahlen
Ich würde sagen, die gibt es in der Realität nicht...Weißt du wie man bei dem nachfolgenden Datensatz die multivariante Normalverteilung nachweisen kann?
Bitte immer ein reproduzierbares Minimalbeispiel angeben. Meinungen gehören mir und geben nicht die meines Brötchengebers wieder.
Dieser Beitrag ist lizensiert unter einer CC BY 4.0 Lizenz
.
Dieser Beitrag ist lizensiert unter einer CC BY 4.0 Lizenz
.
-
- Beiträge: 25
- Registriert: Di Aug 04, 2020 3:00 pm
Re: Analyse von Prozentzahlen
Hallo zusammen,
vielen Dank für eure Beiträge.
Ich würde gerne eine weitere Analyse durchführen und habe hierfür auch schon einen entsprechenden Datensatz konzipiert.
Ich untersuche die Preise von zwei Tante-Emma-Läden (in der Tabelle Anbieter genannt) in einer Stadt und wie sich diese im Zeitablauf veränderten.
Hierfür habe ich die Preise 6 verschiedener Kategorien erfasst.
Ich würde gerne untersuchen ob die Preise der Kategorien unterschiedlich stark steigen beim Vergleich von Tante-Emma-Laden 1 und Tante-Emma-Laden 2.
Natürlich wäre hier eine lineare Regression möglich, aber auch eine Diskriminanzanalyse erscheint mir möglich.
Was habt ihr für Ideen?
Liebe Grüße
Tobi
vielen Dank für eure Beiträge.
Ich würde gerne eine weitere Analyse durchführen und habe hierfür auch schon einen entsprechenden Datensatz konzipiert.
Ich untersuche die Preise von zwei Tante-Emma-Läden (in der Tabelle Anbieter genannt) in einer Stadt und wie sich diese im Zeitablauf veränderten.
Hierfür habe ich die Preise 6 verschiedener Kategorien erfasst.
Code: Alles auswählen
Kategorie Anbieter X2000 X2001 X2002 X2003 X2004 X2005 X2006 X2007 X2008 X2009
1 Kaugummis 1 2.27 2.36 2.40 2.58 2.66 2.49 2.79 2.70 2.83 2.83
2 Kaugummis 2 1.99 2.04 1.90 2.02 2.04 2.04 1.95 2.17 2.04 2.25
3 Duschgel 1 2.16 2.63 2.43 3.07 2.79 3.27 3.37 3.58 3.05 3.24
4 Duschgel 2 1.86 1.83 1.72 1.80 1.76 1.71 2.03 1.98 2.06 1.67
5 Vitamin-Tabletten 1 2.19 2.21 2.30 2.30 2.44 2.49 2.72 2.51 2.70 2.85
6 Vitamin-Tabletten 2 1.75 1.79 1.79 1.87 1.79 1.93 1.99 1.92 2.07 2.00
7 Brot 1 1.73 1.73 1.75 1.88 1.91 2.28 2.01 2.01 1.93 2.02
8 Brot 2 1.48 1.40 1.47 1.45 1.45 1.48 1.63 1.59 1.54 1.50
9 Schere 1 2.40 2.02 2.12 2.21 2.25 2.20 2.88 2.23 2.59 2.68
10 Schere 2 1.51 1.71 1.64 1.76 1.78 1.74 1.79 1.77 1.92 1.82
11 Haarspray 1 2.19 2.36 2.32 2.37 2.22 2.55 2.57 2.53 2.58 2.72
12 Haarspray 2 2.01 1.94 1.86 2.07 2.01 2.00 2.29 2.12 2.09 2.09
Natürlich wäre hier eine lineare Regression möglich, aber auch eine Diskriminanzanalyse erscheint mir möglich.
Was habt ihr für Ideen?
Liebe Grüße
Tobi