In August of 2012, news outlets ranging from the Washington Post to the Huffington Post ran a story about the rise of atheism in America. The source for the story was a poll that asked people, “Irrespective of whether you attend a place of worship or not, would you say you are a religious person, not a religious person or a convinced atheist?” This type of question, which asks people to classify themselves in one way or another, is common in polling and generates categorical data. In this lab we take a look at the atheism survey and explore what’s at play when making inference about population proportions using categorical data.

The survey

To access the press release for the poll, conducted by WIN-Gallup International, click on the following link:

https://github.com/jbryer/DATA606/blob/master/inst/labs/Lab6/more/Global_INDEX_of_Religiosity_and_Atheism_PR__6.pdf

Take a moment to review the report then address the following questions.

  1. In the first paragraph, several key findings are reported. Do these percentages appear to be sample statistics (derived from the data sample) or population parameters?

Answer:

They are sample statistics derived from the data

  1. The title of the report is “Global Index of Religiosity and Atheism”. To generalize the report’s findings to the global human population, what must we assume about the sampling method? Does that seem like a reasonable assumption?

Answer:

We must assume that the sampling was random, the sample size was large enough and less than about 10% of the population. This seems like a reasonable assumption because all the sample sizes of each country put together is way much lower than ten percent of the entire global population that generalisation was made on, while the success/failures are larger than 10

The data

Turn your attention to Table 6 (pages 15 and 16), which reports the sample size and response percentages for all 57 countries. While this is a useful format to summarize the data, we will base our analysis on the original data set of individual responses to the survey. Load this data set into R with the following command.

load("more/atheism.RData")
  1. What does each row of Table 6 correspond to? What does each row of atheism correspond to?

Answer: Each row of table 6 corresponds to sample statistics for the particular countries, whie ach row of atheism corresponds to individual observations.

head(atheism)
##   nationality    response year
## 1 Afghanistan non-atheist 2012
## 2 Afghanistan non-atheist 2012
## 3 Afghanistan non-atheist 2012
## 4 Afghanistan non-atheist 2012
## 5 Afghanistan non-atheist 2012
## 6 Afghanistan non-atheist 2012

To investigate the link between these two ways of organizing this data, take a look at the estimated proportion of atheists in the United States. Towards the bottom of Table 6, we see that this is 5%. We should be able to come to the same number using the atheism data.

  1. Using the command below, create a new dataframe called us12 that contains only the rows in atheism associated with respondents to the 2012 survey from the United States. Next, calculate the proportion of atheist responses. Does it agree with the percentage in Table 6? If not, why?
us12 <- subset(atheism, nationality == "United States" & year == "2012")
# drop unused factor levels
us12$nationality <- as.factor(as.character(us12$nationality))

# Get proportions
us12prop <- prop.table(table(us12$nationality, us12$response))
us12prop
##                
##                   atheist non-atheist
##   United States 0.0499002   0.9500998

The proportion of atheists in the Us as represented on table 6 is 0.05 while the calculated value is 0.0499002. This is almost the same thing in my opinion because if the calculated value is rounded, it will yield 0.05 too.

Inference on proportions

As was hinted at in Exercise 1, Table 6 provides statistics, that is, calculations made from the sample of 51,927 people. What we’d like, though, is insight into the population parameters. You answer the question, “What proportion of people in your sample reported being atheists?” with a statistic; while the question “What proportion of people on earth would report being atheists” is answered with an estimate of the parameter.

The inferential tools for estimating population proportion are analogous to those used for means in the last chapter: the confidence interval and the hypothesis test.

  1. Write out the conditions for inference to construct a 95% confidence interval for the proportion of atheists in the United States in 2012. Are you confident all conditions are met?

Answer:

  1. The Observations must be independent. If we assume that the individuals were selected using simple random sampling, and that the collected sample size is less than 10% of the entire population, then this condition is met.

  2. The observations must come from a nearly normal distribution. If we consider the proportion of atheists in the US at 0.05 and the tota number of observations at 1,002, then the observed number of atheists is 50.1 (approximately 51) and this value is greater than 10. Therefore it is reasonable to assume a nearly normal distribution.

If the conditions for inference are reasonable, we can either calculate the standard error and construct the interval by hand, or allow the inference function to do it for us.

inference(us12$response, est = "proportion", type = "ci", method = "theoretical", 
          success = "atheist")
## Warning: package 'BHH2' was built under R version 3.5.3
## Single proportion -- success: atheist 
## Summary statistics:

## p_hat = 0.0499 ;  n = 1002 
## Check conditions: number of successes = 50 ; number of failures = 952 
## Standard error = 0.0069 
## 95 % Confidence interval = ( 0.0364 , 0.0634 )

Note that since the goal is to construct an interval estimate for a proportion, it’s necessary to specify what constitutes a “success”, which here is a response of "atheist".

Although formal confidence intervals and hypothesis tests don’t show up in the report, suggestions of inference appear at the bottom of page 7: “In general, the error margin for surveys of this kind is \(\pm\) 3-5% at 95% confidence”.

  1. Based on the R output, what is the margin of error for the estimate of the proportion of atheists in US in 2012?

Answer:

The Confidence interval is (0.0364, 0.0634), then

ME <- (0.0634 - 0.0364) / 2
paste('Margin of error is: ', ME)
## [1] "Margin of error is:  0.0135"

OR

se <- 0.0069 
ME <- (1.96 * se)
paste('Margin of error is: ', ME)
## [1] "Margin of error is:  0.013524"
  1. Using the inference function, calculate confidence intervals for the proportion of atheists in 2012 in two other countries of your choice, and report the associated margins of error. Be sure to note whether the conditions for inference are met. It may be helpful to create new data sets for each of the two countries first, and then use these data sets in the inference function to construct the confidence intervals.
# Generate proportions for India
in12 <- subset(atheism, nationality == "India" & year == "2012")
in12$nationality <- as.factor(as.character(in12$nationality))
in12prop <- prop.table(table(in12$nationality, in12$response))
in12prop
##        
##            atheist non-atheist
##   India 0.03021978  0.96978022
inference(in12$response, est = "proportion", type = "ci", method = "theoretical", 
          success = "atheist")
## Single proportion -- success: atheist 
## Summary statistics:

## p_hat = 0.0302 ;  n = 1092 
## Check conditions: number of successes = 33 ; number of failures = 1059 
## Standard error = 0.0052 
## 95 % Confidence interval = ( 0.0201 , 0.0404 )
# Generate proportions for Lebanon
leb12 <- subset(atheism, nationality == "Lebanon" & year == "2012")
leb12$nationality <- as.factor(as.character(leb12$nationality))
leb12prop <- prop.table(table(in12$nationality, in12$response))
leb12prop
##        
##            atheist non-atheist
##   India 0.03021978  0.96978022
head(leb12)
##       nationality    response year
## 29478     Lebanon non-atheist 2012
## 29479     Lebanon non-atheist 2012
## 29480     Lebanon non-atheist 2012
## 29481     Lebanon non-atheist 2012
## 29482     Lebanon non-atheist 2012
## 29483     Lebanon non-atheist 2012
inference(leb12$response, est = "proportion", type = "ci", method = "theoretical", 
          success = "atheist")
## Single proportion -- success: atheist 
## Summary statistics:

## p_hat = 0.0198 ;  n = 505 
## Check conditions: number of successes = 10 ; number of failures = 495 
## Standard error = 0.0062 
## 95 % Confidence interval = ( 0.0077 , 0.032 )
#Margin of error for India
 
MEin <- (0.0404 - 0.0201) / 2
paste('Margin of error for India is: ', MEin)
## [1] "Margin of error for India is:  0.01015"
#Margin of error for Lebanon
MElb <- (0.032 - 0.0077) / 2
paste('Margin of error for India is: ', MElb)
## [1] "Margin of error for India is:  0.01215"

Just as we handle the Sample data for the US, we can also assume that the both samples for Lebanon and India are independent and follow nearly normal distribution.

Although the percentage of atheists in Lithuania is small, there are 10 atheists out of sample of size 500 from Lebanon and number is greater than 10, so it is borderline acceptable to assume nearly normal distribution.

How does the proportion affect the margin of error?

Imagine you’ve set out to survey 1000 people on two questions: are you female? and are you left-handed? Since both of these sample proportions were calculated from the same sample size, they should have the same margin of error, right? Wrong! While the margin of error does change with sample size, it is also affected by the proportion.

Think back to the formula for the standard error: \(SE = \sqrt{p(1-p)/n}\). This is then used in the formula for the margin of error for a 95% confidence interval: \(ME = 1.96\times SE = 1.96\times\sqrt{p(1-p)/n}\). Since the population proportion \(p\) is in this \(ME\) formula, it should make sense that the margin of error is in some way dependent on the population proportion. We can visualize this relationship by creating a plot of \(ME\) vs. \(p\).

The first step is to make a vector p that is a sequence from 0 to 1 with each number separated by 0.01. We can then create a vector of the margin of error (me) associated with each of these values of p using the familiar approximate formula (\(ME = 2 \times SE\)). Lastly, we plot the two vectors against each other to reveal their relationship.

n <- 1000
p <- seq(0, 1, 0.01)
me <- 2 * sqrt(p * (1 - p)/n)
plot(me ~ p, ylab = "Margin of Error", xlab = "Population Proportion")

  1. Describe the relationship between p and me.

Answer:

A quadratice relationship exists beteen p and me. From the plot above, the margin of error increases as the proportion of the population is increasing from 0 to 0.5. The margin of error attained it’s maximum value at p = 0.5 and As population proportion increases beyond 0.5, the margin of error reversed and continuously decreased down to 0 at p=1. This produced a mirror image of the relationship because margin of error (ME) is based on p???(1???p).

Success-failure condition

The textbook emphasizes that you must always check conditions before making inference. For inference on proportions, the sample proportion can be assumed to be nearly normal if it is based upon a random sample of independent observations and if both \(np \geq 10\) and \(n(1 - p) \geq 10\). This rule of thumb is easy enough to follow, but it makes one wonder: what’s so special about the number 10?

The short answer is: nothing. You could argue that we would be fine with 9 or that we really should be using 11. What is the “best” value for such a rule of thumb is, at least to some degree, arbitrary. However, when \(np\) and \(n(1-p)\) reaches 10 the sampling distribution is sufficiently normal to use confidence intervals and hypothesis tests that are based on that approximation.

We can investigate the interplay between \(n\) and \(p\) and the shape of the sampling distribution by using simulations. To start off, we simulate the process of drawing 5000 samples of size 1040 from a population with a true atheist proportion of 0.1. For each of the 5000 samples we compute \(\hat{p}\) and then plot a histogram to visualize their distribution.

p <- 0.1
n <- 1040
p_hats <- rep(0, 5000)

for(i in 1:5000){
  samp <- sample(c("atheist", "non_atheist"), n, replace = TRUE, prob = c(p, 1-p))
  p_hats[i] <- sum(samp == "atheist")/n
}

hist(p_hats, main = "p = 0.1, n = 1040", xlim = c(0, 0.18))

These commands build up the sampling distribution of \(\hat{p}\) using the familiar for loop. You can read the sampling procedure for the first line of code inside the for loop as, “take a sample of size \(n\) with replacement from the choices of atheist and non-atheist with probabilities \(p\) and \(1 - p\), respectively.” The second line in the loop says, “calculate the proportion of atheists in this sample and record this value.” The loop allows us to repeat this process 5,000 times to build a good representation of the sampling distribution.

  1. Describe the sampling distribution of sample proportions at \(n = 1040\) and \(p = 0.1\). Be sure to note the center, spread, and shape.
    Hint: Remember that R has functions such as mean to calculate summary statistics.
describe(p_hats)
## p_hats 
##        n  missing distinct     Info     Mean      Gmd      .05      .10 
##     5000        0       62    0.999  0.09969  0.01049  0.08462  0.08750 
##      .25      .50      .75      .90      .95 
##  0.09327  0.09904  0.10577  0.11154  0.11538 
## 
## lowest : 0.07019231 0.07115385 0.07211538 0.07307692 0.07403846
## highest: 0.12500000 0.12596154 0.12692308 0.12788462 0.12980769
  1. Repeat the above simulation three more times but with modified sample sizes and proportions: for \(n = 400\) and \(p = 0.1\), \(n = 1040\) and \(p = 0.02\), and \(n = 400\) and \(p = 0.02\). Plot all four histograms together by running the par(mfrow = c(2, 2)) command before creating the histograms. You may need to expand the plot window to accommodate the larger two-by-two plot. Describe the three new sampling distributions. Based on these limited plots, how does \(n\) appear to affect the distribution of \(\hat{p}\)? How does \(p\) affect the sampling distribution?

Answer

# For n = 400 and p = 0.1
p0 <- 0.1
n0 <- 400
p_hats0 <- rep(0, 5000)

for(i in 1:5000){
  samp <- sample(c("atheist", "non_atheist"), n0, replace = TRUE, prob = c(p0, 1-p0))
  p_hats0[i] <- sum(samp == "atheist")/n0
}


# For n = 1040 and p = 0.1
p1 <- 0.1
n1 <- 1040
p_hats1 <- rep(0, 5000)

for(i in 1:5000){
  samp <- sample(c("atheist", "non_atheist"), n1, replace = TRUE, prob = c(p1, 1-p1))
  p_hats1[i] <- sum(samp == "atheist")/n1
}

# For n = 1040 and p = 0.02
p2 <- 0.025
n2 <- 1040
p_hats2 <- rep(0, 5000)

for(i in 1:5000){
  samp <- sample(c("atheist", "non_atheist"), n2, replace = TRUE, prob = c(p2, 1-p2))
  p_hats2[i] <- sum(samp == "atheist")/n2
}

# For n = 400 and p = 0.02
p3 <- 0.025
n3 <- 1040
p_hats3 <- rep(0, 5000)

for(i in 1:5000){
  samp <- sample(c("atheist", "non_atheist"), n3, replace = TRUE, prob = c(p3, 1-p3))
  p_hats3[i] <- sum(samp == "atheist")/n3
}

par(mfrow = c(2, 2))
hist(p_hats0, main = "p = 0.1, n = 400", xlim = c(0, 0.18))
hist(p_hats1, main = "p = 0.1, n = 400", xlim = c(0, 0.18))
hist(p_hats2, main = "p = 0.02, n = 1040", xlim = c(0, 0.18))
hist(p_hats3, main = "p = 0.02, n = 400", xlim = c(0, 0.18))

All of the distributions are symmetrical and unimodal, with the last plot appearing to be skewed in some way. The others look nearly nearly normal. Lookng at these plots, it is obvious that the spread of the distribution is affected by n (higher value of n => narrower distribution), while p affects its center (the distrbution is centered around p).

Once you’re done, you can reset the layout of the plotting window by using the command par(mfrow = c(1, 1)) command or clicking on “Clear All” above the plotting window (if using RStudio). Note that the latter will get rid of all your previous plots.

par(mfrow = c(1, 1))
  1. If you refer to Table 6, you’ll find that Australia has a sample proportion of 0.1 on a sample size of 1040, and that Ecuador has a sample proportion of 0.02 on 400 subjects. Let’s suppose for this exercise that these point estimates are actually the truth. Then given the shape of their respective sampling distributions, do you think it is sensible to proceed with inference and report margin of errors, as the reports does?

Yes for Australia, No for Ecuador: a proportion of 0.02 with 400 observations means Ecuador’s sample only has 8 atheists which is very small to assume a normal distribution and therefore unreasonable to proceed with inference. For Australia, a proportion of 0.1 with 1,040 observations means there are 104 atheists. Therefore, we can assume nearly normal distribution and proceed with inference.


On your own

The question of atheism was asked by WIN-Gallup International in a similar survey that was conducted in 2005. (We assume here that sample sizes have remained the same.) Table 4 on page 13 of the report summarizes survey results from 2005 and 2012 for 39 countries.

Answer:

spain05 <- subset(atheism, nationality == "Spain" & year == "2005")
spain05$nationality <- as.factor(as.character(spain05$nationality))
table(spain05$nationality, spain05$response)
##        
##         atheist non-atheist
##   Spain     115        1031
spain12 <- subset(atheism, nationality == "Spain" & year == "2012")
spain12$nationality <- as.factor(as.character(spain12$nationality))
table(spain12$nationality, spain12$response)
##        
##         atheist non-atheist
##   Spain     103        1042

We can assume the observations to be independent as the number of atheists in 2005 is 115 and in 2012 it is 103 and these numbers are way greater than 10, therefore, we can assume near normal distribution.

H0: The number of atheists in Spain did not change between 2005 and 2012, or p12=p05=0.1.

HA: The number of atheists in Spain changed between 2005 and 2012, or p12???0.1.

inference(spain05$response, est = "proportion", type = "ci", method = "theoretical", 
          success = "atheist")
## Single proportion -- success: atheist 
## Summary statistics:

## p_hat = 0.1003 ;  n = 1146 
## Check conditions: number of successes = 115 ; number of failures = 1031 
## Standard error = 0.0089 
## 95 % Confidence interval = ( 0.083 , 0.1177 )
inference(spain12$response, est = "proportion", type = "ci", method = "theoretical", 
          success = "atheist")
## Single proportion -- success: atheist 
## Summary statistics:

## p_hat = 0.09 ;  n = 1145 
## Check conditions: number of successes = 103 ; number of failures = 1042 
## Standard error = 0.0085 
## 95 % Confidence interval = ( 0.0734 , 0.1065 )

By observation, the CI of spain12 sample is completely inside that of spain05 sample. Therefore, the null hypothesis holds.

**b.** Is there convincing evidence that the United States has seen a
change in its atheism index between 2005 and 2012?

Answer:

us05 <- subset(atheism, nationality == "United States" & year == "2005")
us05$nationality <- as.factor(as.character(us05$nationality))
table(us05$nationality, us05$response)
##                
##                 atheist non-atheist
##   United States      10         992
table(us12$nationality, us12$response)
##                
##                 atheist non-atheist
##   United States      50         952

The number of atheists in 2005 is 10, while they are 50 in number in 2012. The nubmer of atheists in 2005 is borderline acceptable for us to assume near normal distribution.

H0: p12=p05=0.01 => The number of atheists in the United States did not change between 2005 and 2012.

HA: p12???0.01 => The number of atheists in the United States changed between 2005 and 2012.

inference(us05$response, est = "proportion", type = "ci", method = "theoretical", 
          success = "atheist")
## Single proportion -- success: atheist 
## Summary statistics:

## p_hat = 0.01 ;  n = 1002 
## Check conditions: number of successes = 10 ; number of failures = 992 
## Standard error = 0.0031 
## 95 % Confidence interval = ( 0.0038 , 0.0161 )
inference(us12$response, est = "proportion", type = "ci", method = "theoretical", 
          success = "atheist")
## Single proportion -- success: atheist 
## Summary statistics:

## p_hat = 0.0499 ;  n = 1002 
## Check conditions: number of successes = 50 ; number of failures = 952 
## Standard error = 0.0069 
## 95 % Confidence interval = ( 0.0364 , 0.0634 )

There is no overlap between confidence intervals for 2005 and 2012 samples. Therefore, the null hypothesis will not stand. The change in atheism is not likely due to chance.

  • If in fact there has been no change in the atheism index in the countries listed in Table 4, in how many of those countries would you expect to detect a change (at a significance level of 0.05) simply by chance?
    Hint: Look in the textbook index under Type 1 error.

If no change occured in the atheism index in the countries

listed in Table 4, but we somehow found some changes probably due to chance, and consequently reject the null hypothesis (though it might be a verifiable truth), it then implies that we have made a Type I error. We would expect to make this type I error with 2 countries when given a significant level of 0.05 => 39*0.05 = 1.95 which is approximately 2.
  • Suppose you’re hired by the local government to estimate the proportion of residents that attend a religious service on a weekly basis. According to the guidelines, the estimate must have a margin of error no greater than 1% with 95% confidence. You have no idea what to expect for \(p\). How many people would you have to sample to ensure that you are within the guidelines?
    Hint: Refer to your plot of the relationship between \(p\) and margin of error. Do not use the data set to answer this question.

We are given an error margin of 0.01 at 95% confidence, but since we don’t know what to expect for p, we can set it at 50,50. We can then calculate as thus:

p = .5
ME = .01
n = round((p-p^2)/(ME/1.96)^2,0)
paste('So, i need to sample ', n, ' people to remain within the guidelines', sep="")
## [1] "So, i need to sample 9604 people to remain within the guidelines"

This is a product of OpenIntro that is released under a Creative Commons Attribution-ShareAlike 3.0 Unported. This lab was written for OpenIntro by Andrew Bray and Mine Çetinkaya-Rundel.