1. Einleitung

Nachdem wir die Datensätze, mit denen wir in diesem Kurs arbeiten werden, in der vorherigen Sitzung kennengelernt und eingeladen haben, wollen wir in dieser Sitzung die darin enthaltenen Variablen so anpassen, dass wir unsere Analysen durchführen können. Dabei sprechen wir vom Recodieren der Variablen. Dieser Prozess muss vor jeder Analyse durchgeführt werden. Damit Ihre Datenveränderungen für Sie und andere nachvollziehbar sind, ist es sinnvoll die Kommentarfunktion mit # zu nutzen. Durch das # ignoriert R den Text in der entsprechenden Zeile. Mit Hilfe von Kommentare können Sie Ihre Arbeitsschritte beschreiben und Ihre Analyse übersichtlicher gestalten.

2. Einladen der Datensätze

Von nun an müssen wir am Beginn jedes Skriptes die Datensätze, die wir verwenden, in den Workspace laden. Andernfalls stünden sie uns nicht zur Bearbeitung zur Verfügung. In dieser Sitzung benötigen wir den Datensatz der GLES zur Bundestagswahl 2017 (gles) und den Datensatz zu “Patterns of Democracy” (lijphart). Wie in der vergangenen Sitzung behandelt, müssen wir zunächst das Verzeichnis prüfen und ggf. auf den Speicherort festlegen, an dem die Datensätze abgespeichert sind.

getwd()
setwd("eigener Pfad")

Nun werden die Datensätze eingeladen. Da die Funktion zum Einladen des Fremdformats .sav read.spss() aus dem Paket foreign stammt, muss dieses zunächst geladen werden. read.csv2() ist eine Funktion aus dem Paket base, sodass kein besonderes Paket zu seiner Verwendung geladen werden muss.

library(foreign)
gles <- read.spss(file = "ZA6801_de_v4-0-1.sav", to.data.frame = TRUE)
lijphart <- read.csv2("Lijphart_Data_recode.csv")

Wenn alles geklappt hat, sehen Sie rechts oben im Global Environment die beiden als Dataframes vorliegenden Datensätze gles mit 2112 Beobachtungen und 602 Variablen und lijphart mit 36 Beobachtungen und 74 Variablen. Variablen, die wir im Folgenden neu bilden, werden die Datensätze erweitern bzw. werden rechts an die Datensätze angehängt. Wenn wir vorliegende Variablen modifizieren, werden die Datensätze lediglich in ihrer bestehenden Form verändert. Beobachten und überwachen Sie also jeweils die Veränderungen der Datensätze im Global Environment. Die Veränderungen der einzelnen Variablen sollten Sie außerdem mittels View() nachvollziehen.

3. Variablen der gles

Anhand der Wahlforschungsdaten der GLES wollen wir im weiteren Verlauf des Seminars die Wahlentscheidung der Befragten mittels sozio-demografischer Größen und politischer Einstellungen erklären. Dabei interessiert uns insbesondere, wie die Wahlentscheidung zugunsten der AfD erklärt werden kann. Außerdem werden wir versuchen, die Selbsteinstufung der Befragten entlang einer Links-Rechts-Achse zu erklären. Wir benötigen die folgenden Variablen: das Alter der Befragten, deren Geschlecht, Einkommen, Wohnort, subjektive Links-Rechts-Einstufung und die Angabe, ob sie bei der Bundestagswahl 2017 ihre Stimme für die Partei AfD abgegeben haben. Im Folgenden werden wir uns die Variablen jeweils einmal in der Form anschauen, in der sie im Datensatz vorkommen. Danach werden wir sie zu unseren Zwecken verändern. Wir beginnen mit den unabhängigen Variablen.

3.1 Alter

Das Alter der Befragten könnte einen Einfluss auf die Wahlentscheidung und die Position entlang einer gedachten Links-Rechts-Achse haben. Tatsächlich wurden die Befragten nicht ausdrücklich nach ihrem Alter gefragt, sondern nach ihrem Geburtsdatum (Schauen Sie mal in den Fragebogen, S. 11). Das Geburtsjahr ist dabei in der Variable q2c, einem Faktor, vercodet worden.

class(gles$q2c)
## [1] "factor"
table(gles$q2c)
## 
## 1922 1923 1924 1925 1927 1928 1929 1930 1931 1932 1933 1934 1935 1936 1937 1938 
##    1    2    1    1    2    4    8    4    8   10    7   13   20   22   22   25 
## 1939 1940 1941 1942 1943 1944 1945 1946 1947 1948 1949 1950 1951 1952 1953 1954 
##   29   35   36   19   24   26   17   23   24   31   36   31   24   50   35   36 
## 1955 1956 1957 1958 1959 1960 1961 1962 1963 1964 1965 1966 1967 1968 1969 1970 
##   32   30   22   38   45   44   32   48   41   41   47   34   36   41   37   30 
## 1971 1972 1973 1974 1975 1976 1977 1978 1979 1980 1981 1982 1983 1984 1985 1986 
##   38   31   32   31   29   21   27   35   22   33   24   23   26   32   27   23 
## 1987 1988 1989 1990 1991 1992 1993 1994 1995 1996 1997 1998 1999 2000 2001 
##   33   41   37   22   27   25   19   18   29   25   27   28   32   48   22

Wir berechnen das Alter, indem wir das Geburtsjahr der Befragten von dem Jahr, in dem die Befragung stattfand, subtrahieren. Dazu müssen wir die Variable zunächst in einen numerischen Vektor umwandeln. Wenn man jedoch Faktoren direkt in numerische Vektoren umwandelt, werden die zugrunde liegenden Levels der Faktoren herangezogen und als numerische Werte interpretiert. Diese Levels ordnet R willkürlich zu, sodass wir sie (ohne Aufwand sie zu ordnen) nicht verwenden können (vgl. Sitzung 1).

head(as.numeric(gles$q2c)) # nicht sinnvoll; durch `head()` nur die ersten Werte ausgegeben 
## [1] 38 42 31 17 79 37

Deshalb müssen wir den Faktor q2c etwas umständlich zuerst zu einem character-Vektor und danach zu einem numerischen Vektor umwandeln. Dazu verschachteln wir die Explicit-Coercion-Funktionen zu as.numeric(as.character()). Die numerischen Geburtsjahre speichern wir als q2c_num. Schließlich führen wir die Subtraktion durch. Das so berrechnete Alter speichern wir in einer neuen Variable alter, die wir an den Datensatz anfügen.

q2c_num <- as.numeric(as.character(gles$q2c))
gles$alter <- 2017 - q2c_num # Warnung "NA's introduced by coercion" weil eine Person mit "keine Angabe" antwortete und das numerisch nicht interpretierbar ist
class(gles$alter)
## [1] "numeric"
table(gles$alter)
## 
## 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 
## 22 48 32 28 27 25 29 18 19 25 27 22 37 41 33 23 27 32 26 23 24 33 22 35 27 21 
## 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 
## 29 31 32 31 38 30 37 41 36 34 47 41 41 48 32 44 45 38 22 30 32 36 35 50 24 31 
## 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 92 93 94 
## 36 31 24 23 17 26 24 19 36 35 29 25 22 22 20 13  7 10  8  4  8  4  2  1  1  2 
## 95 
##  1
summary(gles$alter)
##    Min. 1st Qu.  Median    Mean 3rd Qu.    Max.    NA's 
##   16.00   34.00   51.00   50.15   65.00   95.00       1
View(gles$alter)

Wie die summary() zeigt, sind Personen zwischen 16 und 95 Jahren befragt worden, wobei der Median bei 51 Jahren und das arithmetische Mittel bei 50,15 Jahren liegt. Bei einer Person liegt keine Information über das Alter vor (NA), diese Person hat die Angabe verweigert (s.o.). table() zeigt, wie viele Personen mit einer bestimmten Jahreszahl jeweils enthalten sind, also z.B. 22 16-Jährige, 48 17-Jährige usw. Mit View() können wir die Variable inspizieren.

3.2 Geschlecht

Womöglich hat das Geschlecht der Befragten einen Einfluss. Das Geschlecht der Befragten ist direkt erfasst worden und liegt als Faktor vor. Wir vergeben lediglich einen aussagekräftigen Variablennamen.

names(gles)[names(gles) == "q1"] <- "geschlecht"
table(gles$geschlecht)
## 
## maennlich  weiblich 
##      1097      1015

Wie die table() zeigt, sind Männer in unserem Sample leicht überrepräsentiert.

3.3 Haushaltseinkommen

Auch die wirtschaftliche Situation der Befragten könnte eine Rolle spielen. Das (Netto-)Haushaltseinkommen der Befragten ist in Kategorien abgefragt worden (siehe hierzu die Fragebogendokumentation, S. 206).

table(gles$q192)
## 
##            unter 500 Euro    500 bis unter 750 Euro   750 bis unter 1000 Euro 
##                        19                        33                        62 
##  1000 bis unter 1250 Euro  1250 bis unter 1500 Euro  1500 bis unter 2000 Euro 
##                        85                       111                       231 
##  2000 bis unter 2500 Euro  2500 bis unter 3000 Euro  3000 bis unter 4000 Euro 
##                       262                       250                       310 
##  4000 bis unter 5000 Euro  5000 bis unter 7500 Euro 7500 bis unter 10000 Euro 
##                       189                       161                        38 
##       10000 Euro und mehr 
##                        18

Da diese sehr kleinteilig sind, wollen wir sie neu zuschneiden. Die sieben neuen Kategorien lauten wie folgt: weniger als 1000 Euro, 1000 bis 1999 Euro, 2000 bis 2999 Euro, 3000 bis 3999 Euro, 4000 bis 4999 Euro, 5000 bis 7499 Euro und 7500 Euro und mehr.

Wir verwenden zur Indizierung wieder eckige Klammern, allerdings diesmal in Kombination mit dem logischen Oder |. Der nachfolgende Code sagt folgendes aus: Wenn q192 die Ausprägung “unter 500 Euro” aufweist, oder wenn die Variable “500 bis unter 750 Euro” aufweist, oder wenn sie “750 bis unter 1000 Euro” aufweist, dann ordne einkommen_cat “weniger als 1000 Euro” zu. Für die anderen Kategorien geschieht dies analog. Machen Sie sich bewusst, dass der Inhalt der eckigen Klammern jeweils ein logischer Vektor mit TRUE- und FALSE-Aussagen ist. Wenn TRUE, dann wird einkommen_cat der String rechts von <- zugewiesen.

Führen Sie zu Veranschaulichungszwecken diese Codezeile zunächst einzeln aus.

gles$einkommen_cat[gles$q192 == "unter 500 Euro" |
                     gles$q192 == "500 bis unter 750 Euro" |
                     gles$q192 == "750 bis unter 1000 Euro"] <- "weniger als 1000"

Lassen Sie sich dann View(gles$einkommen_cat) ausgeben:

View(gles$einkommen_cat)

Sie sehen, dass einkommen_cat für die meisten Beobachtungen ein NA (“not available”) enthält. Das sind die Personen, deren Haushaltseinkommen 1000 Euro und mehr beträgt. Wenn Sie nun schrittweise die folgenden Codezeilen ausführen, verschwinden die NAs nach und nach.

gles$einkommen_cat[gles$q192 == "1000 bis unter 1250 Euro" |
                     gles$q192 == "1250 bis unter 1500 Euro" |
                     gles$q192 == "1500 bis unter 2000 Euro"] <- "1000 bis 1999"
gles$einkommen_cat[gles$q192 == "2000 bis unter 2500 Euro" |
                     gles$q192 == "2500 bis unter 3000 Euro"] <- "2000 bis 2999"
gles$einkommen_cat[gles$q192 == "3000 bis unter 4000 Euro"] <- "3000 bis 3999"
gles$einkommen_cat[gles$q192 == "4000 bis unter 5000 Euro"] <- "4000 bis 4999"
gles$einkommen_cat[gles$q192 == "5000 bis unter 7500 Euro"] <- "5000 bis 7499"
gles$einkommen_cat[gles$q192 == "7500 bis unter 10000 Euro" |
                     gles$q192 == "10000 Euro und mehr"] <- "7500 und mehr"

Wenn Sie alle Zeilen ausgeführt haben, werden immernoch einige NAs übrig bleiben. Das sind die Personen, die die Aussage verweigert haben, die ihr Haushaltseinkommen nicht kannten, oder deren Haushaltseinkommen aus anderen Gründen nicht vorlag. Die Variable sieht schließlich so aus:

table(gles$einkommen_cat)
## 
##    1000 bis 1999    2000 bis 2999    3000 bis 3999    4000 bis 4999 
##              427              512              310              189 
##    5000 bis 7499    7500 und mehr weniger als 1000 
##              161               56              114

Dabei fällt uns auf, dass die eigentlich niedrigste Kategorie “weniger als 1000” im Output als letzte erscheint. Um die ursprünglich richtige Ordnung herzustellen, wandeln wir einkommen_cat in einen Faktor um und ordnen die Levels händisch.

gles$einkommen_cat <- factor(gles$einkommen_cat,
                                levels = c("weniger als 1000",
                                           "1000 bis 1999",
                                           "2000 bis 2999",
                                           "3000 bis 3999",
                                           "4000 bis 4999",
                                           "5000 bis 7499",
                                           "7500 und mehr"))

table(gles$einkommen_cat)
## 
## weniger als 1000    1000 bis 1999    2000 bis 2999    3000 bis 3999 
##              114              427              512              310 
##    4000 bis 4999    5000 bis 7499    7500 und mehr 
##              189              161               56

Nun ist die Variable richtig geordnet.

Wir können das Haushaltseinkommen auch als kontinuierliche Variable behandeln, da es in der vorliegenden Kodierweise sieben Ausprägungen aufweist. Dazu verändern wir die eben erstellte Variable wie folgt:

gles$einkommen_num[gles$einkommen_cat == "weniger als 1000"] <- 1
gles$einkommen_num[gles$einkommen_cat == "1000 bis 1999"] <- 2
gles$einkommen_num[gles$einkommen_cat == "2000 bis 2999"] <- 3
gles$einkommen_num[gles$einkommen_cat == "3000 bis 3999"] <- 4
gles$einkommen_num[gles$einkommen_cat == "4000 bis 4999"] <- 5
gles$einkommen_num[gles$einkommen_cat == "5000 bis 7499"] <- 6
gles$einkommen_num[gles$einkommen_cat == "7500 und mehr"] <- 7
table(gles$einkommen_num)
## 
##   1   2   3   4   5   6   7 
## 114 427 512 310 189 161  56

Wie Sie sehen, entsprechen sich die Kategorien von einkommen_cat und einkommen_num in Bezug auf die Fallzahl pro Kategorie.

3.4 Wohnort

Außerdem könnte der Wohnort der Befragten einen Einfluss auf die politische Position oder die Wahlentscheidung haben. In diesem Fall sind die in der Ursprungsform vorliegenden Kategorien ausreichend. Allerdings sind die Labels recht unhandlich, weshalb wir sie umbenennen.

table(gles$q197)
## 
##       laendliche Gegend oder Dorf    kleine oder mittelgrosse Stadt 
##                               766                               762 
## Vorstadt/ Vorort einer Grossstadt                        Grossstadt 
##                               147                               437
gles$wohnort[gles$q197 == "Grossstadt"] <- "Großstadt"
gles$wohnort[gles$q197 == "kleine oder mittelgrosse Stadt"] <- "Kleinstadt"
gles$wohnort[gles$q197 == "laendliche Gegend oder Dorf"] <- "Land"
gles$wohnort[gles$q197 == "Vorstadt/ Vorort einer Grossstadt"] <- "Vorstadt"
table(gles$wohnort)
## 
##  Großstadt Kleinstadt       Land   Vorstadt 
##        437        762        766        147

Da lediglich die Kategorienamen und nicht die Datenstruktur angepasst wurden, hat sich am Zuschnitt der Kategorien nichts geändert.

3.6 AfD-Wahl

Schließlich benötigen wir eine Variable, die eine Aussage darüber trifft, ob eine befragte Person die AfD gewählt oder nicht gewählt hat. Bei solchen Variablen, die eine Aussage darüber treffen, ob etwas zutrifft oder nicht, sprechen wir von dichotomen Variablen. Dichotome Variablen vercoden den Wert 1, wenn etwas zutrifft und den Wert 0, wenn etwas nicht zutrifft. Die dichotome abhängige Variable zur AfD-Wahl bilden wir aus der Variable q19ba, die die berichtete Wahlentscheidung der Befragten enthält.

table(gles$q19ba)
## 
##                          CDU/CSU                              CDU 
##                              504                                0 
##                              CSU                              SPD 
##                                0                              338 
##                              FDP                           GRUENE 
##                              200                              225 
##                        DIE LINKE                               BP 
##                              188                                0 
##                             BüSo                              DDP 
##                                0                                0 
##                       Die GRAUEN                       Die PARTEI 
##                                0                                0 
##                    DIE VIOLETTEN                          FAMILIE 
##                                0                                0 
##                    Freie Waehler                            GRAUE 
##                                0                                0 
## Grundeinkommen - Volksentscheide                              KPD 
##                                0                                0 
##                             MLPD                              NPD 
##                                0                                0 
##                            NSDAP                             oedp 
##                                0                                0 
##                              PBC                          PIRATEN 
##                                0                                0 
##                           Pro DM                          RENTNER 
##                                0                                0 
##                              REP                              RRP 
##                                0                                0 
##                              SED                 Tierschutzpartei 
##                                0                                0 
##                              UDP                  Volksabstimmung 
##                                0                                0 
##                          ZENTRUM                              UBP 
##                                0                                0 
##                             LDPD                              DBD 
##                                0                                0 
##                             DNVP                           GB/BHE 
##                                0                                0 
##                             NDPD              PARTEI DER VERNUNFT 
##                                0                                0 
##                       Bergpartei                              AfD 
##                                0                              162 
##                       DIE RECHTE                AD-Demokraten NRW 
##                                0                                0 
##                              BGE                        V-Partei3 
##                                0                                0 
##                               MG                               DM 
##                                0                                0 
##                              DiB                         Sonstige 
##                                0                                0 
##                    andere Partei                   Einzelkandidat 
##                               73                                0 
##                     keine Partei                    alle Parteien 
##                                0                                0 
##            mit mehreren Parteien 
##                                0
View(gles$q19ba)

Wie zu erkennen ist, sind viele Kategorien nicht besetzt. Uns interessiert nun lediglich, ob eine Person die AfD gewählt hat oder nicht. Entsprechend wird in der neuen Variable AfD.Wahl Personen, die die AfD gewählt haben, eine 1 zugewiesen, während Personen, die eine andere Partei als die AfD gewählt haben, eine 0 zugewiesen wird. Wir verwenden == (gleich) und != (ungleich).

gles$AfD.Wahl[gles$q19ba == "AfD"] <- 1
gles$AfD.Wahl[gles$q19ba != "AfD"] <- 0

Die neue Variable beinhaltet jetzt ausschließlich Einsen und Nullen. Wenn in q19ba keine Information über die Wahlentscheidung vorliegt (NA), beinhaltet allerdings auch die neue gebildete Variable NA.

table(gles$AfD.Wahl)
## 
##    0    1 
## 1528  162
View(gles$AfD.Wahl)

4. Variablen aus lijphart

Die Variablen des Datensatzes zu “Patterns of Democracy” werden im weiteren Verlauf dieses Kurses in der Form verwendet, in der sie ursprünglich vorliegen. Wir müssen sie also nicht recodieren. Allerdings liegen sie als character-Vektoren vor und müssen zu numerischen Vektoren umgewandelt werden. Das sei hier beispielhaft für die Variable enpp4510 dargestellt, die die Effective Number of Parliamentary Parties in den Jahren 1945 bis 2010 für alle Länder enthält.

class(lijphart$enpp4510)
## [1] "character"
table(lijphart$enpp4510)
## 
## 1.38 1.67 1.68 1.69 1.87 1.99 2.16 2.22 2.27 2.28 2.39 2.52 2.66 2.67 2.68 2.85 
##    1    1    1    1    1    1    1    1    1    1    1    1    1    1    1    2 
## 2.89 3.09 3.13 3.15 3.26 3.47 3.48 3.62 3.64 3.72 4.40 4.57 4.72 4.80 4.84 4.87 
##    1    1    1    1    1    1    1    1    1    1    1    1    1    1    1    1 
## 5.04 5.18 5.20 
##    1    1    1
summary(lijphart$enpp4510)
##    Length     Class      Mode 
##        36 character character

Wie der Output der Funktionen table() und summary() zeigen, ist die Variable in dieser Form nicht sinnvoll zu interpretieren. Wir wandeln sie entsprechend um:

lijphart$enpp4510 <- as.numeric(lijphart$enpp4510)
summary(lijphart$enpp4510)
##    Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
##   1.380   2.277   2.990   3.192   3.890   5.200

Anders als beim GLES überschreiben wir hier die Ursprungsvariable bzw. bilden keine neue Variable. Das hat damit zu tun, dass die Variable eigentlich numerisch sein müsste, wir sie also “reparieren” anstatt sie für unsere Zwecke anzupassen. So gehen wir mit allen Variablen vor, die wir im Kurs verwenden werden. Für den Gallagher-Index zur Messung der Disproportionalität von Wahlsystemen:

lijphart$disprop4510 <- as.numeric(lijphart$disprop4510)
summary(lijphart$disprop4510)
##    Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
##   1.210   3.252   7.140   8.546  14.305  21.970

Für den Bikameralismus-Index:

lijphart$bicam4510 <- as.numeric(lijphart$bicam4510)
summary(lijphart$bicam4510)
##    Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
##   1.000   1.075   2.000   2.214   3.000   4.000

Für den Anteil von Minimal-Winning-Koalition mit einer Partei, der zur Messung des Kabinettstyps herangezogen wird:

lijphart$minwin_one_part4510 <- as.numeric(lijphart$minwin_one_part4510)
summary(lijphart$minwin_one_part4510)
##    Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
##    4.00   37.67   55.05   60.32   86.60  100.00

Sowie für die Kabinettsdauer, mithilfe derer die Exekutivdominanz operationalisiert wird:

lijphart$exe_dom4510 <- as.numeric(lijphart$exe_dom4510)
summary(lijphart$exe_dom4510)
##    Min. 1st Qu.  Median    Mean 3rd Qu.    Max. 
##   1.000   3.223   4.305   5.348   8.078   9.900

5. Zusammenfassung

Variablen der GLES haben wir geprüft und umkodiert. Dabei haben wir die Datenmanipulationen jeweils mit table(), summary() und View() nachvollzogen. Bestehende Variablen wurden in ihrer Ursprungsform belassen, während recodierte Variablen an den Datensatz angehängt wurden. Er beinhaltet nun 609 Variablen. Die Variablen aus dem Datensatz zu “Patterns of Democracy”, die wir in unseren Analysen verwenden werden, wurden lediglich zu numerischen Vektoren umgewandelt. Sie wurden nicht in Form neuer Objekte gespeichert, sondern überschrieben. Dieser Datensatz hat sich in seinem Umfang somit nicht verändert.

6. Aufgaben

  1. Suchen Sie im Fragebogen der GLES nach einer geeigneten Variable zur Messung der schulischen Bildung der Befragten. Diese sollte Information über die Schulabschlüsse der Befragten enthalten.
  2. Bilden Sie eine Variable schulab mit den folgenden Kategorien: Hochschulreife, Fachhochschulreife, Realschule, Hauptschule, kein Abschluss. Inspizieren Sie die Variable und stellen Sie sicher, dass bei Befragten, die einen anderen oder noch keinen Schulabschluss haben, ein NA vercodet wurde.
  3. Bilden Sie aus einkommen_num eine Variable einkommen_cat1, die vier Kategorien hat: “weniger als 2000”, “2000 bis unter 4000”, “4000 bis unter 7500”, “7500 und mehr”. Nutzen Sie die Vergleichsoperatoren >, <, >= & <= sowie den logischen Operator &.
  4. Bilden Sie eine identische Variable einkommen_cat2. Nutzen Sie diesmal die Operatoren == und |. Inspizieren Sie, ob beide tatsächlich identisch sind.
  5. Suchen Sie per Google eine Funktion, mit der Sie prüfen können, ob Objekte/Variablen identisch sind. Wenden Sie diese Funktion auf einkommen_cat1 und einkommen_cat2 an.
  6. Was ist an der Berechnung des Alters der Befragten nicht ganz richtig?