Party Identification or Repressed Party Alienation?

In a two-party system such as in the United States, there are at least two ways to arrive at what looks like citizens identifying with particular political parties. One way is for citizens to truly see themselves in one of the parties, to feel a significant consistency between their own perspective and the party's. This is what we try to gauge in traditional measures of party identification (ID). Alternatively, if a citizen is sufficiently alienated by both of the dominant political parties, it is possible that they will cling all the more tightly to the party they see as least evil. This is more or less the opposite of what we're trying to gauge with measures of party ID. Political scientists might expect that the outcome of such increasing alienation might be the rise of a third party to replace one of the currently-existing parties. But easily it could be shown under reasonable assumptions that, if voters dislike their least favored party with enough intensity, they will vote for the “lesser evil” rather than a third party. In such a case, we’d observe stable or increasing party identification, perhaps even what looks like the increasing importance of parties, while in reality the exact opposite is occurring.

There is at least some data to suggest something like this might be going on in the United States. Future research could ask whether this is more likely in countries with majoritarian electoral institutions than in countries with multi-party, proportional representation systems.

Below I disaggregate a classic party identification measure “Generally speaking, do you think of yourself as a Democrat, Republican, etc”. I look at how many respondents generally think of themselves as belonging to one of these parties, but in other ways strongly dis-identify with that party.

I look at several variables that a meaningful and robust party identification measure ought to reflect. I look at whether respondents think there is any difference between the parties (partydiff), whether voting makes a difference(votingdiff), whether any party represents the respondent “reasonably well” (partyrep), whether there is any single thing they like about the parties (dempartylike/repubpartylike), and whether they rate either party above the middle value on feeling thermometers. Respondents who truly identify with a particular party should say/think all of the above; the degree to which people don't think these things but nonetheless identify with a particular party might be thought of as the degree of party or party-system alienation that is effectively repressed by this common party ID measure.

Read and clean ANES data

library(foreign)
nes <- read.dta("anes2008.dta")
## Warning: value labels (V080001_) for V080001 are missing
## Warning: value labels (V081120_) for V081120 are missing
## Warning: value labels (V081205_) for V081205 are missing
## Warning: value labels (V081206_) for V081206 are missing
## Warning: value labels (V084007_) for V084007 are missing

nes$V083097[nes$V083097 == "-8. Don't know"] <- NA
nes$V083097[nes$V083097 == "-9. Refused"] <- NA
partyid <- nes$V083097
partyid <- factor(partyid)

nes$V085183[nes$V085183 == "-2"] <- NA
nes$V085183[nes$V085183 == "-8"] <- NA
nes$V085183[nes$V085183 == "-9"] <- NA
votingdiff <- nes$V085183

nes$V085185[nes$V085185 == "-2. No Post-election IW"] <- NA
nes$V085185[nes$V085185 == "-8. Don't know"] <- NA
nes$V085185[nes$V085185 == "-9. Refused"] <- NA
partyrep <- nes$V085185
partyrep <- factor(partyrep)

nes$V085118[nes$V085118 == "-2. No Post-election IW"] <- NA
nes$V085118[nes$V085118 == "-8. Don't know"] <- NA
nes$V085118[nes$V085118 == "-9. Refused"] <- NA
partydiff <- nes$V085118
partydiff <- factor(partydiff)

nes$V083049[nes$V083049 == "-8. Don't know"] <- NA
nes$V083049[nes$V083049 == "-9. Refused"] <- NA
repubpartylike <- nes$V083049
repubpartylike <- factor(repubpartylike)

nes$V083045[nes$V083045 == "-8. Don't know"] <- NA
nes$V083045[nes$V083045 == "-9. Refused"] <- NA
dempartylike <- nes$V083045
dempartylike <- factor(dempartylike)

nes$V083044a[nes$V083044a == "-2"] <- NA
nes$V083044a[nes$V083044a == "-6"] <- NA
nes$V083044a[nes$V083044a == "-8"] <- NA
nes$V083044a[nes$V083044a == "-9"] <- NA
demparty <- nes$V083044a

nes$V083044b[nes$V083044b == "-2"] <- NA
nes$V083044b[nes$V083044b == "-6"] <- NA
nes$V083044b[nes$V083044b == "-8"] <- NA
nes$V083044b[nes$V083044b == "-9"] <- NA
republicanparty <- nes$V083044b

Here I generate some variables reflecting party alienation. Nonparty takes a 1 for respondents who think there is no difference between the two dominant parties. Likenoparty takes a value of 1 for respondents who do not like a single thing about either party. Partiescold takes a value of 1 for respondents who place both parties below 50 on the feeling thermometers. Finally, a summary variable noparty simply sums how many of these party alienation categories a respondent falls into.



nonparty <- ifelse(partydiff == "5. No, no differences", c(1), c(0))

likenoparty <- ifelse(dempartylike == "5. No" & repubpartylike == "5. No", c(1), 
    c(0))

partiescold <- ifelse(demparty < "50" & republicanparty < "50", c(1), c(0))

noparty <- nonparty + likenoparty + partiescold

Some quick cross-tabulations of party ID with forms of party alienation

First, about 25% of people who “generally speaking,” think of themselves as a Democrat or Republican do not think that any party represents them “reasonably well.”

table3 <- table(partyrep, partyid)  #column percentages
prop.table(table3, 2)
##         partyid
## partyrep 1. Democrat 2. Republican 3. Independent 4. Other party (SPECIFY)
##   1. Yes      0.7556        0.7215         0.5353                   0.5455
##   5. No       0.2444        0.2785         0.4647                   0.4545
##         partyid
## partyrep 5. No preference {VOL}
##   1. Yes                 0.4397
##   5. No                  0.5603

Next, nearly 18% of Democratic-identifiers and 13% of Republican-identifiers think there are no differences between the parties.

table4 <- table(partydiff, partyid)  #column percentages
prop.table(table4, 2)
##                        partyid
## partydiff               1. Democrat 2. Republican 3. Independent
##   1. Yes, differences        0.8230        0.8655         0.6714
##   5. No, no differences      0.1770        0.1345         0.3286
##                        partyid
## partydiff               4. Other party (SPECIFY) 5. No preference {VOL}
##   1. Yes, differences                     0.6522                 0.5625
##   5. No, no differences                   0.3478                 0.4375

Next, a full 13% of “Democrats” and 16% of “Republicans” cannot think of a single thing they like about the party they identify with.

table5 <- table(dempartylike, partyid)
prop.table(table5, 2)  #column percentages
##             partyid
## dempartylike 1. Democrat 2. Republican 3. Independent
##       1. Yes      0.8634        0.3768         0.5022
##       5. No       0.1366        0.6232         0.4978
##             partyid
## dempartylike 4. Other party (SPECIFY) 5. No preference {VOL}
##       1. Yes                   0.5000                 0.3101
##       5. No                    0.5000                 0.6899
table6 <- table(repubpartylike, partyid)
prop.table(table6, 2)  #column percentages
##               partyid
## repubpartylike 1. Democrat 2. Republican 3. Independent
##         1. Yes      0.2254        0.8349         0.3529
##         5. No       0.7746        0.1651         0.6471
##               partyid
## repubpartylike 4. Other party (SPECIFY) 5. No preference {VOL}
##         1. Yes                   0.5455                 0.2424
##         5. No                    0.4545                 0.7576

Aggregating Party Alienation

The variable noparty counts how many of the party-rejection categories a respondent falls into. If we look at what percentage of the sample falls into each cell of a cross-tabulation of party ID and noparty, we can estimate how many Americans are true, straightforward party identifiers and how many identify but reject the party at the same time. This table permits a back-of-the-napkin estimation of whether there would be popular support for a third party, and how much of this potential third-party support is effectively repressed into the two-party mold.


partyalienation <- table(noparty, partyid)
partydisid <- prop.table(partyalienation, 2)  #column totals

prop.table(partyalienation)  #raw totals
##        partyid
## noparty 1. Democrat 2. Republican 3. Independent 4. Other party (SPECIFY)
##       0    0.240741      0.132716       0.134774                 0.006173
##       1    0.152778      0.054527       0.097222                 0.001543
##       2    0.038066      0.009774       0.068416                 0.003086
##       3    0.001543      0.001543       0.006173                 0.000000
##        partyid
## noparty 5. No preference {VOL}
##       0               0.014918
##       1               0.020062
##       2               0.014403
##       3               0.001543

It's easy to see that the genuine dominant-party identifiers are seriously outnumbered by by the party-alienated. The simple and genuine two-party identifiers are about 38% of the sample, while the variously dominant-party-dissatisfied (whether identifying with the dominant parties or not) makeup the rest. This is a much different picture than that given by the more common breakdown of the simple party ID measure, which suggests about 60% of Americans identify with one of the two major parties:

partyidtable <- table(partyid)
prop.table(partyidtable)
## partyid
##              1. Democrat            2. Republican           3. Independent 
##                  0.42720                  0.18889                  0.31220 
## 4. Other party (SPECIFY)   5. No preference {VOL} 
##                  0.01006                  0.06165

The following table and bar graph shows the percentages of party identifiers that, at the same time, reject their party to various degrees. Almost half of all Democrat-identifiers articulate in at least one way their alienation from the party.


prop.table(partyalienation, 2)
##        partyid
## noparty 1. Democrat 2. Republican 3. Independent 4. Other party (SPECIFY)
##       0    0.555819      0.668394       0.439597                 0.571429
##       1    0.352732      0.274611       0.317114                 0.142857
##       2    0.087886      0.049223       0.223154                 0.285714
##       3    0.003563      0.007772       0.020134                 0.000000
##        partyid
## noparty 5. No preference {VOL}
##       0               0.292929
##       1               0.393939
##       2               0.282828
##       3               0.030303
barplot(partydisid, main = "Party Alienation within Party Identification", legend = rownames(partydisid))

plot of chunk unnamed-chunk-8