mirror of
https://github.com/kidwellj/hacking_religion_textbook.git
synced 2025-01-10 09:22:31 +00:00
513 lines
42 KiB
R
513 lines
42 KiB
R
) %>% factor(levels = c("low", "medium", "high"))
|
|
)
|
|
## we need to convert data to factors on named response data
|
|
climate_experience_data$Q67 <- climate_experience_data$Q67 %>%
|
|
mutate(
|
|
income_bin = case_when(
|
|
as.data.frame(climate_experience_data$Q67) > 6 ~ "high",
|
|
as.data.frame(climate_experience_data$Q67) < 3 ~ "low",
|
|
TRUE ~ "medium"
|
|
) %>% factor(levels = c("low", "medium", "high"))
|
|
)
|
|
## Q8 subsetting based on confidence on views
|
|
climate_experience_data <- climate_experience_data %>%
|
|
mutate(
|
|
Q8_bin = case_when(
|
|
Q8_1 > mean(Q8_1) + sd(Q8_1) ~ "high",
|
|
Q8_1 < mean(Q8_1) - sd(Q8_1) ~ "low",
|
|
TRUE ~ "medium"
|
|
) %>% factor(levels = c("low", "medium", "high"))
|
|
)
|
|
# Q53 subsetting based on Political LR orientation:
|
|
# Generate low/med/high bins based on Mean and SD
|
|
climate_experience_data <- climate_experience_data %>%
|
|
mutate(
|
|
Q53_bin = case_when(
|
|
Q53_1 > mean(Q53_1) + sd(Q53_1) ~ "high",
|
|
Q53_1 < mean(Q53_1) - sd(Q53_1) ~ "low",
|
|
TRUE ~ "medium"
|
|
) %>% factor(levels = c("low", "medium", "high"))
|
|
)
|
|
## Q57 subsetting based on Religiosity
|
|
climate_experience_data <- climate_experience_data %>%
|
|
mutate(
|
|
Q57_bin = case_when(
|
|
Q57_1 > mean(Q57_1) + sd(Q57_1) ~ "high",
|
|
Q57_1 < mean(Q57_1) - sd(Q57_1) ~ "low",
|
|
TRUE ~ "medium"
|
|
) %>% factor(levels = c("low", "medium", "high"))
|
|
)
|
|
## Subsetting based on Spirituality
|
|
# Calculate overall mean nature-relatedness score based on six questions:
|
|
climate_experience_data$Q51_score <- rowMeans(select(climate_experience_data, Q51_remote_vacation:Q51_heritage))
|
|
# Create low/med/high bins based on Mean and +1/-1 Standard Deviation
|
|
climate_experience_data <- climate_experience_data %>%
|
|
mutate(
|
|
Q51_bin = case_when(
|
|
Q51_score > mean(Q51_score) + sd(Q51_score) ~ "high",
|
|
Q51_score < mean(Q51_score) - sd(Q51_score) ~ "low",
|
|
TRUE ~ "medium"
|
|
) %>% factor(levels = c("low", "medium", "high"))
|
|
)
|
|
# Calculate overall mean spirituality score based on six questions:
|
|
climate_experience_data$Q52_score <- rowMeans(select(climate_experience_data, Q52a_1:Q52f_1))
|
|
# Create low/med/high bins based on Mean and +1/-1 Standard Deviation
|
|
climate_experience_data <- climate_experience_data %>%
|
|
mutate(
|
|
Q52_bin = case_when(
|
|
Q52_score > mean(Q52_score) + sd(Q52_score) ~ "high",
|
|
Q52_score < mean(Q52_score) - sd(Q52_score) ~ "low",
|
|
TRUE ~ "medium"
|
|
) %>% factor(levels = c("low", "medium", "high"))
|
|
)
|
|
# Generate new column with simplified postcode area data (only initial alpha characters)
|
|
# Note: this data has been embargoed for the sake of respondent confidentiality and will not likely be included in any future releases
|
|
climate_experience_data$postcode_area <- str_to_upper(str_extract(climate_experience_data_named$Q68, "^([A-Z,a-z]){1,}"))
|
|
# Generate new column with simplified postcode area data (only initial alpha characters)
|
|
# Note: this data has been embargoed for the sake of respondent confidentiality and will not likely be included in any future releases
|
|
climate_experience_data$postcode_area <- str_to_upper(str_extract(climate_experience_data$Q68, "^([A-Z,a-z]){1,}"))
|
|
# Add identifier flagging London residents
|
|
climate_experience_data <- climate_experience_data %>%
|
|
rowwise() %>%
|
|
mutate(
|
|
isLondon = case_when(
|
|
postcode_area == "E" ~ "1",
|
|
postcode_area == "EC" ~ "1",
|
|
postcode_area == "N" ~ "1",
|
|
postcode_area == "NW" ~ "1",
|
|
postcode_area == "SE" ~ "1",
|
|
postcode_area == "SW" ~ "1",
|
|
postcode_area == "W" ~ "1",
|
|
postcode_area == "WC" ~ "1",
|
|
TRUE ~ "0"
|
|
)
|
|
)
|
|
#| include: true
|
|
#| label: fig-polar
|
|
setwd("/Users/kidwellj/gits/hacking_religion_textbook/hacking_religion")
|
|
library(here) |> suppressPackageStartupMessages()
|
|
library(tidyverse) |> suppressPackageStartupMessages()
|
|
here::i_am("chapter_1.qmd")
|
|
# Set up local workspace:
|
|
if (dir.exists("data") == FALSE) {
|
|
dir.create("data")
|
|
}
|
|
if (dir.exists("figures") == FALSE) {
|
|
dir.create("figures")
|
|
}
|
|
if (dir.exists("derivedData") == FALSE) {
|
|
dir.create("derivedData")
|
|
}
|
|
uk_census_2021_religion <- read.csv(here("example_data", "census2021-ts030-rgn.csv"))
|
|
head(uk_census_2021_religion)
|
|
knitr::kable(head(uk_census_2021_religion))
|
|
knitr::kable(head(uk_census_2021_religion))
|
|
uk_census_2021_religion_wmids <- uk_census_2021_religion_wmids %>% select(no_religion:no_response)
|
|
uk_census_2021_religion_wmids <- uk_census_2021_religion %>% filter(geography=="West Midlands")
|
|
uk_census_2021_religion_wmids <- uk_census_2021_religion_wmids %>% select(no_religion:no_response)
|
|
uk_census_2021_religion_wmids <- gather(uk_census_2021_religion_wmids)
|
|
df <- uk_census_2021_religion_wmids[order(uk_census_2021_religion_wmids$value,decreasing = TRUE),]
|
|
barplot(height=df$value, names=df$key)
|
|
ggplot(uk_census_2021_religion_wmids, aes(x = key, y = value)) + geom_bar(stat = "identity") # <1>
|
|
ggplot(uk_census_2021_religion_wmids, aes(x= reorder(key,-value),value)) + geom_bar(stat ="identity") # <2>
|
|
uk_census_2021_religion_totals <- uk_census_2021_religion %>% select(no_religion:no_response) # <1>
|
|
uk_census_2021_religion_totals <- uk_census_2021_religion_totals %>%
|
|
summarise(across(everything(), ~ sum(., na.rm = TRUE))) # <2>
|
|
uk_census_2021_religion_totals <- gather(uk_census_2021_religion_totals) # <3>
|
|
ggplot(uk_census_2021_religion_totals, aes(x= reorder(key,-value),value)) + geom_bar(stat ="identity") # <4>
|
|
uk_census_2021_religion_merged <- rbind(uk_census_2021_religion_totals, uk_census_2021_religion_wmids)
|
|
uk_census_2021_religion_totals$dataset <- c("totals")
|
|
uk_census_2021_religion_wmids$dataset <- c("wmids")
|
|
uk_census_2021_religion_merged <- rbind(uk_census_2021_religion_totals, uk_census_2021_religion_wmids)
|
|
ggplot(uk_census_2021_religion_merged, aes(fill=dataset, x= reorder(key,-value), value)) + geom_bar(position="dodge", stat ="identity")
|
|
uk_census_2021_religion_totals <- uk_census_2021_religion_totals %>%
|
|
dplyr::mutate(perc = scales::percent(value / sum(value), accuracy = 0.1, trim = FALSE)) # <3>
|
|
uk_census_2021_religion_wmids <- uk_census_2021_religion_wmids %>%
|
|
dplyr::mutate(perc = scales::percent(value / sum(value), accuracy = 0.1, trim = FALSE)) # <3>
|
|
uk_census_2021_religion_merged <- rbind(uk_census_2021_religion_totals, uk_census_2021_religion_wmids)
|
|
ggplot(uk_census_2021_religion_merged, aes(fill=dataset, x=key, y=perc)) + geom_bar(position="dodge", stat ="identity")
|
|
ggplot(uk_census_2021_religion_merged, aes(fill=dataset, x= reorder(key,-value), value)) + geom_bar(position="dodge", stat ="identity")
|
|
uk_census_2021_religion_totals <- uk_census_2021_religion_totals %>%
|
|
dplyr::mutate(perc = scales::percent(value / sum(value), accuracy = 0.1, trim = FALSE)) # <3>
|
|
uk_census_2021_religion_wmids <- uk_census_2021_religion_wmids %>%
|
|
dplyr::mutate(perc = scales::percent(value / sum(value), accuracy = 0.1, trim = FALSE)) # <3>
|
|
uk_census_2021_religion_merged <- rbind(uk_census_2021_religion_totals, uk_census_2021_religion_wmids)
|
|
ggplot(uk_census_2021_religion_merged, aes(fill=dataset, x=key, y=perc)) + geom_bar(position="dodge", stat ="identity")
|
|
ggplot(uk_census_2021_religion_merged, aes(fill=dataset, x=key, y=perc)) + geom_bar(position="dodge", stat ="identity") + scale_fill_brewer(palette = "Set1")
|
|
uk_census_2021_religion_merged$dataset <- factor(uk_census_2021_religion_merged$dataset, levels = c('wmids', 'totals'))
|
|
ggplot(uk_census_2021_religion_merged, aes(fill=fct_reorder(dataset, value), x=reorder(key,-value),value, y=perc)) + geom_bar(position="dodge", stat ="identity", colour = "black") + scale_fill_brewer(palette = "Set1")
|
|
ggplot(uk_census_2021_religion_merged, aes(fill=fct_reorder(dataset, value), x=reorder(key,-value),value, y=perc)) + geom_bar(position="dodge", stat ="identity", colour = "black") + scale_fill_brewer(palette = "Set1") + theme(axis.text.x = element_text(angle = 90, vjust = 0.5, hjust=1))
|
|
ggplot(uk_census_2021_religion_merged, aes(fill=fct_reorder(dataset, value), x=reorder(key,-value),value, y=perc)) + geom_bar(position="dodge", stat ="identity", colour = "black") + scale_fill_brewer(palette = "Set1") + ggtitle("Religious Affiliation in the UK: 2021") + xlab("") + ylab("")
|
|
ggplot(uk_census_2021_religion_merged, aes(fill=fct_reorder(dataset, value), x=reorder(key,-value),value, y=perc))
|
|
ggplot(uk_census_2021_religion_merged, aes(fill=fct_reorder(dataset, value), x=reorder(key,-value),value, y=perc)) + geom_bar(position="dodge", stat ="identity", colour = "black") + scale_fill_brewer(palette = "Set1") + ggtitle("Religious Affiliation in the UK: 2021") + xlab("") + ylab("")
|
|
ggplot(uk_census_2021_religion_merged, aes(fill=fct_reorder(dataset, value), x=reorder(key,-value),value, y=perc)) + geom_bar(position="dodge", stat ="identity", colour = "black") + scale_fill_brewer(palette = "Set1") + ggtitle("Religious Affiliation in the UK: 2021") + xlab("") + ylab("") + theme(axis.text.x = element_text(angle = 90, vjust = 0.5, hjust=1))
|
|
ggplot(uk_census_2021_religion_merged, aes(fill=fct_reorder(dataset, value), x=reorder(key,-value),value, y=perc)) + geom_bar(position="dodge", stat ="identity", colour = "black") + scale_fill_brewer(palette = "Set1") + ggtitle("Religious Affiliation in the 2021 Census of England and Wales") + xlab("") + ylab("") + theme(axis.text.x = element_text(angle = 90, vjust = 0.5, hjust=1))
|
|
nomis_extract_census2021 <- readRDS(file = (here("example_data", "nomis_extract_census2021.rds")))
|
|
#| column: margin
|
|
uk_census_2021_religion_ethnicity <- select(nomis_extract_census2021, GEOGRAPHY_NAME, C2021_RELIGION_10_NAME, C2021_ETH_8_NAME, OBS_VALUE) # <1>
|
|
uk_census_2021_religion_ethnicity <- filter(uk_census_2021_religion_ethnicity, GEOGRAPHY_NAME=="England and Wales" & C2021_RELIGION_10_NAME != "Total" & C2021_ETH_8_NAME != "Total") # <2>
|
|
uk_census_2021_religion_ethnicity <- filter(uk_census_2021_religion_ethnicity, C2021_ETH_8_NAME != "White: English, Welsh, Scottish, Northern Irish or British" & C2021_ETH_8_NAME != "White: Irish" & C2021_ETH_8_NAME != "White: Gypsy or Irish Traveller, Roma or Other White") # <3>
|
|
ggplot(uk_census_2021_religion_ethnicity, aes(fill=C2021_ETH_8_NAME, x=C2021_RELIGION_10_NAME, y=OBS_VALUE)) + geom_bar(position="dodge", stat ="identity", colour = "black") + scale_fill_brewer(palette = "Set1") + ggtitle("Religious Affiliation in the 2021 Census of England and Wales") + xlab("") + ylab("") + theme(axis.text.x = element_text(angle = 90, vjust = 0.5, hjust=1)) # <4>
|
|
uk_census_2021_religion_ethnicity <- select(nomis_extract_census2021, GEOGRAPHY_NAME, C2021_RELIGION_10_NAME, C2021_ETH_8_NAME, OBS_VALUE) # <1>
|
|
uk_census_2021_religion_ethnicity <- filter(uk_census_2021_religion_ethnicity, GEOGRAPHY_NAME=="England and Wales" & C2021_RELIGION_10_NAME != "Total" & C2021_ETH_8_NAME != "Total") # <2>
|
|
uk_census_2021_religion_ethnicity <- filter(uk_census_2021_religion_ethnicity, C2021_ETH_8_NAME != "White: English, Welsh, Scottish, Northern Irish or British" & C2021_ETH_8_NAME != "White: Irish" & C2021_ETH_8_NAME != "White: Gypsy or Irish Traveller, Roma or Other White") # <3>
|
|
ggplot(uk_census_2021_religion_ethnicity, aes(fill=C2021_ETH_8_NAME, x=C2021_RELIGION_10_NAME, y=OBS_VALUE)) + geom_bar(position="dodge", stat ="identity", colour = "black") + scale_fill_brewer(palette = "Set1") + ggtitle("Religious Affiliation in the 2021 Census of England and Wales") + xlab("") + ylab("") + theme(axis.text.x = element_text(angle = 90, vjust = 0.5, hjust=1)) # <4>
|
|
#| column: margin
|
|
uk_census_2021_religion_ethnicity_white <- filter(uk_census_2021_religion_ethnicity, C2021_ETH_8_NAME == "White") # <1>
|
|
uk_census_2021_religion_ethnicity_nonwhite <- filter(uk_census_2021_religion_ethnicity, C2021_ETH_8_NAME != "White") # <2>
|
|
ggplot(uk_census_2021_religion_ethnicity_nonwhite, aes(fill=C2021_ETH_8_NAME, x=C2021_RELIGION_10_NAME, y=OBS_VALUE)) + geom_bar(position="dodge", stat ="identity", colour = "black") + scale_fill_brewer(palette = "Set1") + ggtitle("Religious Affiliation in the 2021 Census of England and Wales") + xlab("") + ylab("") + theme(axis.text.x = element_text(angle = 90, vjust = 0.5, hjust=1)) # <3>
|
|
ggplot(uk_census_2021_religion_ethnicity, aes(fill=C2021_ETH_8_NAME, x=C2021_RELIGION_10_NAME, y=OBS_VALUE), x=reorder(key,-value),value, y=perc)) + geom_bar(position="dodge", stat ="identity", colour = "black") + scale_fill_brewer(palette = "Set1") + ggtitle("Religious Affiliation in the 2021 Census of England and Wales") + xlab("") + ylab("") + theme(axis.text.x = element_text(angle = 90, vjust = 0.5, hjust=1)) # <4>
|
|
ggplot(uk_census_2021_religion_ethnicity, aes(fill=C2021_ETH_8_NAME, x=C2021_RELIGION_10_NAME, y=OBS_VALUE), x=reorder(key,-value),value, y=perc) + geom_bar(position="dodge", stat ="identity", colour = "black") + scale_fill_brewer(palette = "Set1") + ggtitle("Religious Affiliation in the 2021 Census of England and Wales") + xlab("") + ylab("") + theme(axis.text.x = element_text(angle = 90, vjust = 0.5, hjust=1)) # <4>
|
|
ggplot(uk_census_2021_religion_ethnicity, aes(fill=C2021_ETH_8_NAME, x=C2021_RELIGION_10_NAME, y=OBS_VALUE, x=reorder(key,-value),value, y=perc)) + geom_bar(position="dodge", stat ="identity", colour = "black") + scale_fill_brewer(palette = "Set1") + ggtitle("Religious Affiliation in the 2021 Census of England and Wales") + xlab("") + ylab("") + theme(axis.text.x = element_text(angle = 90, vjust = 0.5, hjust=1)) # <4>
|
|
ggplot(uk_census_2021_religion_ethnicity, aes(fill=C2021_ETH_8_NAME, x=C2021_RELIGION_10_NAME, y=OBS_VALUE) + geom_bar(position="dodge", stat ="identity", colour = "black") + scale_fill_brewer(palette = "Set1") + ggtitle("Religious Affiliation in the 2021 Census of England and Wales") + xlab("") + ylab("") + theme(axis.text.x = element_text(angle = 90, vjust = 0.5, hjust=1)) # <4>
|
|
ggplot(uk_census_2021_religion_ethnicity, aes(fill=C2021_ETH_8_NAME, x=C2021_RELIGION_10_NAME, y=OBS_VALUE)) +
|
|
scale_y_continuous(labels = percent_format()
|
|
ggplot(uk_census_2021_religion_ethnicity, aes(fill=C2021_ETH_8_NAME, x=C2021_RELIGION_10_NAME, y=OBS_VALUE)) +
|
|
ggplot(uk_census_2021_religion_ethnicity, aes(fill=C2021_ETH_8_NAME, x=C2021_RELIGION_10_NAME, y=OBS_VALUE)) +
|
|
geom_bar(position="dodge", stat ="identity", colour = "black") +
|
|
scale_fill_brewer(palette = "Set1") +
|
|
ggtitle("Religious Affiliation in the 2021 Census of England and Wales") +
|
|
xlab("") + ylab("") +
|
|
theme(axis.text.x = element_text(angle = 90, vjust = 0.5, hjust=1) +
|
|
scale_y_continuous(labels = percent_format())) # <4>
|
|
uk_census_2021_religion_ethnicity <- select(nomis_extract_census2021, GEOGRAPHY_NAME, C2021_RELIGION_10_NAME, C2021_ETH_8_NAME, OBS_VALUE) # <1>
|
|
uk_census_2021_religion_ethnicity <- filter(uk_census_2021_religion_ethnicity, GEOGRAPHY_NAME=="England and Wales" & C2021_RELIGION_10_NAME != "Total" & C2021_ETH_8_NAME != "Total") # <2>
|
|
uk_census_2021_religion_ethnicity <- filter(uk_census_2021_religion_ethnicity, C2021_ETH_8_NAME != "White: English, Welsh, Scottish, Northern Irish or British" & C2021_ETH_8_NAME != "White: Irish" & C2021_ETH_8_NAME != "White: Gypsy or Irish Traveller, Roma or Other White") # <3>
|
|
ggplot(uk_census_2021_religion_ethnicity, aes(fill=C2021_ETH_8_NAME, x=C2021_RELIGION_10_NAME, y=OBS_VALUE)) +
|
|
geom_bar(position="dodge", stat ="identity", colour = "black") +
|
|
scale_fill_brewer(palette = "Set1") +
|
|
ggtitle("Religious Affiliation in the 2021 Census of England and Wales") +
|
|
xlab("") + ylab("") +
|
|
theme(axis.text.x = element_text(angle = 90, vjust = 0.5, hjust=1) +
|
|
scale_y_continuous(labels = percent_format())) # <4>
|
|
library(scales)
|
|
ggplot(uk_census_2021_religion_ethnicity, aes(fill=C2021_ETH_8_NAME, x=C2021_RELIGION_10_NAME, y=OBS_VALUE)) +
|
|
geom_bar(position="dodge", stat ="identity", colour = "black") +
|
|
scale_fill_brewer(palette = "Set1") +
|
|
ggtitle("Religious Affiliation in the 2021 Census of England and Wales") +
|
|
xlab("") + ylab("") +
|
|
theme(axis.text.x = element_text(angle = 90, vjust = 0.5, hjust=1) +
|
|
scale_y_continuous(labels = percent_format())) # <4>
|
|
ggplot(uk_census_2021_religion_ethnicity, aes(fill=C2021_ETH_8_NAME, x=C2021_RELIGION_10_NAME, y=OBS_VALUE)) +
|
|
geom_bar(position="dodge", stat ="identity", colour = "black") +
|
|
scale_fill_brewer(palette = "Set1") +
|
|
ggtitle("Religious Affiliation in the 2021 Census of England and Wales") +
|
|
xlab("") + ylab("") +
|
|
theme(axis.text.x = element_text(angle = 90, vjust = 0.5, hjust=1) +
|
|
scale_y_continuous(labels = scales::percent_format())) # <4>
|
|
ggplot(uk_census_2021_religion_ethnicity, aes(fill=C2021_ETH_8_NAME, x=C2021_RELIGION_10_NAME, y=OBS_VALUE)) +
|
|
ggplot(uk_census_2021_religion_ethnicity, aes(fill=C2021_ETH_8_NAME, x=C2021_RELIGION_10_NAME, y=OBS_VALUE)) +
|
|
ggplot(uk_census_2021_religion_ethnicity, aes(fill=C2021_ETH_8_NAME, x=C2021_RELIGION_10_NAME, y=OBS_VALUE)) +
|
|
geom_bar(position="dodge", stat ="identity", colour = "black") +
|
|
scale_fill_brewer(palette = "Set1") +
|
|
ggtitle("Religious Affiliation in the 2021 Census of England and Wales") +
|
|
xlab("") + ylab("") +
|
|
theme(axis.text.x = element_text(angle = 90, vjust = 0.5, hjust=1) +
|
|
scale_x_discrete(labels = function(x) paste0(x, "%"))) # <4>
|
|
percent_format_custom <- function(x) {
|
|
paste0(formatC(as.numeric(x), format = "f", digits = 2), "%")
|
|
}
|
|
ggplot(uk_census_2021_religion_ethnicity, aes(fill=C2021_ETH_8_NAME, x=C2021_RELIGION_10_NAME, y=OBS_VALUE)) +
|
|
geom_bar(position="dodge", stat ="identity", colour = "black") +
|
|
scale_fill_brewer(palette = "Set1") +
|
|
ggtitle("Religious Affiliation in the 2021 Census of England and Wales") +
|
|
xlab("") + ylab("") +
|
|
theme(axis.text.x = element_text(angle = 90, vjust = 0.5, hjust=1) +
|
|
scale_x_discrete(labels = percent_format_custom)) # <4>
|
|
uk_census_2021_religion_ethnicity$OBS_VALUE <- percent(uk_census_2021_religion_ethnicity$OBS_VALUE / 100)
|
|
ggplot(uk_census_2021_religion_ethnicity, aes(fill=C2021_ETH_8_NAME, x=C2021_RELIGION_10_NAME, y=OBS_VALUE)) +
|
|
ggplot(uk_census_2021_religion_ethnicity, aes(fill=C2021_ETH_8_NAME, x=C2021_RELIGION_10_NAME, y=OBS_VALUE)) +
|
|
geom_bar(position="dodge", stat ="identity", colour = "black") +
|
|
scale_fill_brewer(palette = "Set1") +
|
|
ggtitle("Religious Affiliation in the 2021 Census of England and Wales") +
|
|
xlab("") + ylab("") +
|
|
theme(axis.text.x = element_text(angle = 90, vjust = 0.5, hjust=1)) # <4>
|
|
ggplot(uk_census_2021_religion_ethnicity, aes(fill=C2021_ETH_8_NAME, x=C2021_RELIGION_10_NAME, y=OBS_VALUE)) +
|
|
geom_bar(position="dodge", stat ="identity", colour = "black") +
|
|
scale_fill_brewer(palette = "Set1") +
|
|
ggtitle("Religious Affiliation in the 2021 Census of England and Wales") +
|
|
xlab("") + ylab("") +
|
|
theme(axis.text.x = element_text(angle = 90, vjust = 0.5, hjust=1)) # <4>
|
|
uk_census_2021_religion_ethnicity <- select(nomis_extract_census2021, GEOGRAPHY_NAME, C2021_RELIGION_10_NAME, C2021_ETH_8_NAME, OBS_VALUE) # <1>
|
|
uk_census_2021_religion_ethnicity <- filter(uk_census_2021_religion_ethnicity, GEOGRAPHY_NAME=="England and Wales" & C2021_RELIGION_10_NAME != "Total" & C2021_ETH_8_NAME != "Total") # <2>
|
|
uk_census_2021_religion_ethnicity <- filter(uk_census_2021_religion_ethnicity, C2021_ETH_8_NAME != "White: English, Welsh, Scottish, Northern Irish or British" & C2021_ETH_8_NAME != "White: Irish" & C2021_ETH_8_NAME != "White: Gypsy or Irish Traveller, Roma or Other White") # <3>
|
|
ggplot(uk_census_2021_religion_ethnicity, aes(fill=C2021_ETH_8_NAME, x=C2021_RELIGION_10_NAME, y=OBS_VALUE)) +
|
|
geom_bar(position="dodge", stat ="identity", colour = "black") +
|
|
scale_fill_brewer(palette = "Set1") +
|
|
ggtitle("Religious Affiliation in the 2021 Census of England and Wales") +
|
|
xlab("") + ylab("") +
|
|
theme(axis.text.x = element_text(angle = 90, vjust = 0.5, hjust=1)) # <4>
|
|
ggplot(uk_census_2021_religion_ethnicity, aes(fill=C2021_ETH_8_NAME, x=C2021_RELIGION_10_NAME, y=OBS_VALUE)) +
|
|
geom_bar(position="dodge", stat ="identity", colour = "black") +
|
|
scale_fill_brewer(palette = "Set1") +
|
|
scale_x_log10() +
|
|
ggtitle("Religious Affiliation in the 2021 Census of England and Wales") +
|
|
xlab("") + ylab("") +
|
|
theme(axis.text.x = element_text(angle = 90, vjust = 0.5, hjust=1)) # <4>
|
|
uk_census_2021_religion_ethnicity
|
|
uk_census_2021_religion_ethnicity <- uk_census_2021_religion_ethnicity %>%
|
|
group_by(C2021_RELIGION_10_NAME) %>%
|
|
mutate(Percentage = OBS_VALUE / sum(OBS_VALUE) * 100)
|
|
ggplot(uk_census_2021_religion_ethnicity, aes(fill=C2021_ETH_8_NAME, x=C2021_RELIGION_10_NAME, y=OBS_VALUE)) +
|
|
geom_bar(position="dodge", stat ="identity", colour = "black") +
|
|
scale_fill_brewer(palette = "Set1") +
|
|
ggtitle("Religious Affiliation in the 2021 Census of England and Wales") +
|
|
xlab("") + ylab("") +
|
|
theme(axis.text.x = element_text(angle = 90, vjust = 0.5, hjust=1)) # <4>
|
|
uk_census_2021_religion_ethnicity
|
|
ggplot(uk_census_2021_religion_ethnicity, aes(fill=C2021_ETH_8_NAME, x=C2021_RELIGION_10_NAME, y=Percentage)) +
|
|
geom_bar(position="dodge", stat ="identity", colour = "black") +
|
|
scale_fill_brewer(palette = "Set1") +
|
|
ggtitle("Religious Affiliation in the 2021 Census of England and Wales") +
|
|
xlab("") + ylab("") +
|
|
theme(axis.text.x = element_text(angle = 90, vjust = 0.5, hjust=1)) # <4>
|
|
#| column: margin
|
|
uk_census_2021_religion_ethnicity_white <- filter(uk_census_2021_religion_ethnicity, C2021_ETH_8_NAME == "White") # <1>
|
|
uk_census_2021_religion_ethnicity_nonwhite <- filter(uk_census_2021_religion_ethnicity, C2021_ETH_8_NAME != "White") # <2>
|
|
ggplot(uk_census_2021_religion_ethnicity_nonwhite, aes(fill=C2021_ETH_8_NAME, x=C2021_RELIGION_10_NAME, y=OBS_VALUE)) + geom_bar(position="dodge", stat ="identity", colour = "black") + scale_fill_brewer(palette = "Set1") + ggtitle("Religious Affiliation in the 2021 Census of England and Wales") + xlab("") + ylab("") + theme(axis.text.x = element_text(angle = 90, vjust = 0.5, hjust=1)) # <3>
|
|
ggplot(uk_census_2021_religion_ethnicity_nonwhite, aes(fill=C2021_ETH_8_NAME, x=C2021_RELIGION_10_NAME, y=Percentage)) + geom_bar(position="dodge", stat ="identity", colour = "black") + scale_fill_brewer(palette = "Set1") + ggtitle("Religious Affiliation in the 2021 Census of England and Wales") + xlab("") + ylab("") + theme(axis.text.x = element_text(angle = 90, vjust = 0.5, hjust=1)) # <3>
|
|
uk_census_2021_religion_ethnicity_white <- filter(uk_census_2021_religion_ethnicity, C2021_ETH_8_NAME == "White") # <1>
|
|
uk_census_2021_religion_ethnicity_nonwhite <- filter(uk_census_2021_religion_ethnicity, C2021_ETH_8_NAME != "White") # <2>
|
|
uk_census_2021_religion_ethnicity_nonwhite <- uk_census_2021_religion_ethnicity_nonwhite %>%
|
|
group_by(C2021_RELIGION_10_NAME) %>%
|
|
mutate(Percentage = OBS_VALUE / sum(OBS_VALUE) * 100) # <4>
|
|
ggplot(uk_census_2021_religion_ethnicity_nonwhite, aes(fill=C2021_ETH_8_NAME, x=C2021_RELIGION_10_NAME, y=Percentage)) + geom_bar(position="dodge", stat ="identity", colour = "black") + scale_fill_brewer(palette = "Set1") + ggtitle("Religious Affiliation in the 2021 Census of England and Wales") + xlab("") + ylab("") + theme(axis.text.x = element_text(angle = 90, vjust = 0.5, hjust=1)) # <3>
|
|
ggplot(uk_census_2021_religion_ethnicity_nonwhite, aes(fill=C2021_ETH_8_NAME, x=C2021_RELIGION_10_NAME, y=OBS_VALUE)) + geom_bar(position="dodge", stat ="identity", colour = "black") + scale_fill_brewer(palette = "Set1") + ggtitle("Religious Affiliation in the 2021 Census of England and Wales") + xlab("") + ylab("") + theme(axis.text.x = element_text(angle = 90, vjust = 0.5, hjust=1)) # <3>
|
|
ggplot(uk_census_2021_religion_ethnicity, aes(fill=C2021_ETH_8_NAME, x=C2021_RELIGION_10_NAME, y=OBS_VALUE)) +
|
|
geom_bar(position="dodge", stat ="identity", colour = "black") +
|
|
scale_fill_brewer(palette = "Set1") +
|
|
ggtitle("Religious Affiliation in the 2021 Census of England and Wales") +
|
|
xlab("") + ylab("") +
|
|
theme(axis.text.x = element_text(angle = 90, vjust = 0.5, hjust=1)) # <5>
|
|
ggplot(uk_census_2021_religion_ethnicity, aes(fill=C2021_ETH_8_NAME, x=C2021_RELIGION_10_NAME, y=Percentage)) +
|
|
geom_bar(position="dodge", stat ="identity", colour = "black") +
|
|
scale_fill_brewer(palette = "Set1") +
|
|
ggtitle("Religious Affiliation in the 2021 Census of England and Wales") +
|
|
xlab("") + ylab("") +
|
|
theme(axis.text.x = element_text(angle = 90, vjust = 0.5, hjust=1)) # <5>
|
|
View(uk_census_2021_religion_ethnicity)
|
|
# TODO - fix display here so that's display is the same for Percentage as it is for OBS_VALUE
|
|
uk_census_2021_religion_ethnicity <- uk_census_2021_religion_ethnicity %>%
|
|
group_by(C2021_ETH_8_NAME) %>%
|
|
mutate(Percentage = OBS_VALUE / sum(OBS_VALUE) * 100) # <4>
|
|
ggplot(uk_census_2021_religion_ethnicity, aes(fill=C2021_ETH_8_NAME, x=C2021_RELIGION_10_NAME, y=Percentage)) +
|
|
geom_bar(position="dodge", stat ="identity", colour = "black") +
|
|
scale_fill_brewer(palette = "Set1") +
|
|
ggtitle("Religious Affiliation in the 2021 Census of England and Wales") +
|
|
xlab("") + ylab("") +
|
|
theme(axis.text.x = element_text(angle = 90, vjust = 0.5, hjust=1)) # <5>
|
|
ggplot(uk_census_2021_religion_ethnicity, aes(fill=C2021_ETH_8_NAME, x=C2021_RELIGION_10_NAME, y=Obsvalue)) +
|
|
geom_bar(position="dodge", stat ="identity", colour = "black") +
|
|
scale_fill_brewer(palette = "Set1") +
|
|
ggtitle("Religious Affiliation in the 2021 Census of England and Wales") +
|
|
xlab("") + ylab("") +
|
|
theme(axis.text.x = element_text(angle = 90, vjust = 0.5, hjust=1)) # <5>
|
|
ggplot(uk_census_2021_religion_ethnicity, aes(fill=C2021_ETH_8_NAME, x=C2021_RELIGION_10_NAME, y=OBS_VALUE)) +
|
|
geom_bar(position="dodge", stat ="identity", colour = "black") +
|
|
scale_fill_brewer(palette = "Set1") +
|
|
ggtitle("Religious Affiliation in the 2021 Census of England and Wales") +
|
|
xlab("") + ylab("") +
|
|
theme(axis.text.x = element_text(angle = 90, vjust = 0.5, hjust=1)) # <5>
|
|
# TODO - fix display here so that's display is the same for Percentage as it is for OBS_VALUE
|
|
uk_census_2021_religion_ethnicity <- uk_census_2021_religion_ethnicity %>%
|
|
group_by(C2021_ETH_8_NAME) %>%
|
|
mutate(Percentage = OBS_VALUE / sum(OBS_VALUE) * 100) # <4>
|
|
ggplot(uk_census_2021_religion_ethnicity, aes(fill=C2021_ETH_8_NAME, x=C2021_RELIGION_10_NAME, y=OBS_VALUE)) +
|
|
geom_bar(position="dodge", stat ="identity", colour = "black") +
|
|
scale_fill_brewer(palette = "Set1") +
|
|
ggtitle("Religious Affiliation in the 2021 Census of England and Wales") +
|
|
xlab("") + ylab("") +
|
|
theme(axis.text.x = element_text(angle = 90, vjust = 0.5, hjust=1)) # <5>
|
|
ggplot(uk_census_2021_religion_ethnicity, aes(fill=C2021_ETH_8_NAME, x=C2021_RELIGION_10_NAME, y=Percentage)) +
|
|
geom_bar(position="dodge", stat ="identity", colour = "black") +
|
|
scale_fill_brewer(palette = "Set1") +
|
|
ggtitle("Religious Affiliation in the 2021 Census of England and Wales") +
|
|
xlab("") + ylab("") +
|
|
theme(axis.text.x = element_text(angle = 90, vjust = 0.5, hjust=1)) # <5>
|
|
ggplot(uk_census_2021_religion_ethnicity_nonwhite, aes(x=C2021_RELIGION_10_NAME, y=OBS_VALUE)) + geom_bar(position="dodge", stat ="identity", colour = "black") + facet_wrap(~C2021_ETH_8_NAME, ncol = 2) + scale_fill_brewer(palette = "Set1") + ggtitle("Religious Affiliation in the 2021 Census of England and Wales") + xlab("") + ylab("") + theme(axis.text.x = element_text(angle = 90, vjust = 0.5, hjust=1))
|
|
uk_census_2021_religion_ethnicity_white <- filter(uk_census_2021_religion_ethnicity, C2021_ETH_8_NAME == "White") # <1>
|
|
uk_census_2021_religion_ethnicity_nonwhite <- filter(uk_census_2021_religion_ethnicity, C2021_ETH_8_NAME != "White") # <2>
|
|
uk_census_2021_religion_ethnicity_nonwhite <- uk_census_2021_religion_ethnicity_nonwhite %>%
|
|
group_by(C2021_ETH_8_NAME) %>%
|
|
mutate(Percentage = OBS_VALUE / sum(OBS_VALUE) * 100) # <4>
|
|
ggplot(uk_census_2021_religion_ethnicity_nonwhite, aes(fill=C2021_ETH_8_NAME, x=C2021_RELIGION_10_NAME, y=OBS_VALUE)) + geom_bar(position="dodge", stat ="identity", colour = "black") + scale_fill_brewer(palette = "Set1") + ggtitle("Religious Affiliation in the 2021 Census of England and Wales") + xlab("") + ylab("") + theme(axis.text.x = element_text(angle = 90, vjust = 0.5, hjust=1)) # <3>
|
|
ggplot(uk_census_2021_religion_ethnicity_nonwhite, aes(fill=C2021_ETH_8_NAME, x=C2021_RELIGION_10_NAME, y=Percentage)) + geom_bar(position="dodge", stat ="identity", colour = "black") + scale_fill_brewer(palette = "Set1") + ggtitle("Religious Affiliation in the 2021 Census of England and Wales") + xlab("") + ylab("") + theme(axis.text.x = element_text(angle = 90, vjust = 0.5, hjust=1)) # <3>
|
|
uk_census_2021_religion_ethnicity_white <- filter(uk_census_2021_religion_ethnicity, C2021_ETH_8_NAME == "White") # <1>
|
|
uk_census_2021_religion_ethnicity_nonwhite <- filter(uk_census_2021_religion_ethnicity, C2021_ETH_8_NAME != "White") # <2>
|
|
ggplot(uk_census_2021_religion_ethnicity_nonwhite, aes(fill=C2021_ETH_8_NAME, x=C2021_RELIGION_10_NAME, y=OBS_VALUE)) + geom_bar(position="dodge", stat ="identity", colour = "black") + scale_fill_brewer(palette = "Set1") + ggtitle("Religious Affiliation in the 2021 Census of England and Wales") + xlab("") + ylab("") + theme(axis.text.x = element_text(angle = 90, vjust = 0.5, hjust=1)) # <3>
|
|
uk_census_2021_religion_ethnicity <- uk_census_2021_religion_ethnicity %>%
|
|
group_by(C2021_ETH_8_NAME) %>%
|
|
mutate(Percentage = OBS_VALUE / sum(OBS_VALUE) * 100)
|
|
ggplot(uk_census_2021_religion_ethnicity, aes(fill=C2021_ETH_8_NAME, x=C2021_RELIGION_10_NAME, y=OBS_VALUE)) +
|
|
geom_bar(position="dodge", stat ="identity", colour = "black") +
|
|
scale_fill_brewer(palette = "Set1") +
|
|
ggtitle("Religious Affiliation in the 2021 Census of England and Wales") +
|
|
xlab("") + ylab("") +
|
|
theme(axis.text.x = element_text(angle = 90, vjust = 0.5, hjust=1))
|
|
ggplot(uk_census_2021_religion_ethnicity, aes(fill=C2021_ETH_8_NAME, x=C2021_RELIGION_10_NAME, y=Percentage)) +
|
|
geom_bar(position="dodge", stat ="identity", colour = "black") +
|
|
scale_fill_brewer(palette = "Set1") +
|
|
ggtitle("Religious Affiliation in the 2021 Census of England and Wales") +
|
|
xlab("") + ylab("") +
|
|
theme(axis.text.x = element_text(angle = 90, vjust = 0.5, hjust=1))
|
|
ggplot(uk_census_2021_religion_ethnicity_nonwhite, aes(x=C2021_RELIGION_10_NAME, y=OBS_VALUE)) +
|
|
geom_bar(position="dodge", stat ="identity", colour = "black") +
|
|
facet_wrap(~C2021_ETH_8_NAME, ncol = 2) + scale_fill_brewer(palette = "Set1") +
|
|
ggtitle("Religious Affiliation in the 2021 Census of England and Wales") + xlab("") + ylab("") +
|
|
theme(axis.text.x = element_text(angle = 90, vjust = 0.5, hjust=1))
|
|
nomis_extract_census2001 <- readRDS(file = (here("example_data", "nomis_extract_census2001.rds")))
|
|
nomis_extract_census2011 <- readRDS(file = (here("example_data", "nomis_extract_census2011.rds")))
|
|
uk_census_2001_religion_ethnicity <- select(nomis_extract_census2001, GEOGRAPHY_NAME, C_RELPUK11_NAME, C_ETHHUK11_NAME, OBS_VALUE) # <1>
|
|
uk_census_2011_religion_ethnicity <- select(nomis_extract_census2011, GEOGRAPHY_NAME, C_RELPUK11_NAME, C_ETHPUK11_NAME, OBS_VALUE) # <1>
|
|
uk_census_2001_religion_ethnicity <- filter(uk_census_2001_religion_ethnicity, GEOGRAPHY_NAME=="England and Wales" & C_RELPUK11_NAME != "All categories: Religion") # <2>
|
|
uk_census_2011_religion_ethnicity <- filter(uk_census_2011_religion_ethnicity, GEOGRAPHY_NAME=="England and Wales" & C_RELPUK11_NAME != "All categories: Religion" & C_ETHPUK11_NAME != "All categories: Ethnic group") # <2>
|
|
uk_census_2001_religion_ethnicity <- uk_census_2001_religion_ethnicity %>% filter(grepl('Total', C_ETHHUK11_NAME)) # <3>
|
|
uk_census_2011_religion_ethnicity <- uk_census_2011_religion_ethnicity %>% filter(grepl('Total', C_ETHPUK11_NAME)) # <3>
|
|
uk_census_2011_religion_plot <- ggplot(uk_census_2011_religion_ethnicity, aes(x = C_RELPUK11_NAME, y = OBS_VALUE)) + geom_bar(stat = "identity") + theme(axis.text.x = element_text(angle = 90, vjust = 0.5, hjust=1))
|
|
uk_census_2001_religion_ethnicity$dataset <- c("2001") # <1>
|
|
uk_census_2011_religion_ethnicity$dataset <- c("2011") # <1>
|
|
uk_census_2021_religion_ethnicity$dataset <- c("2021") # <1>
|
|
names(uk_census_2001_religion_ethnicity) <- c("Geography", "Religion", "Ethnicity", "Value", "Year") # <2>
|
|
names(uk_census_2011_religion_ethnicity) <- c("Geography", "Religion", "Ethnicity", "Value", "Year") # <2>
|
|
names(uk_census_2021_religion_ethnicity) <- c("Geography", "Religion", "Ethnicity", "Value", "Year") # <2>
|
|
# Next we need to change the terms using mutate()
|
|
uk_census_2001_religion_ethnicity <- uk_census_2001_religion_ethnicity %>%
|
|
mutate(Ethnicity = str_replace_all(Ethnicity,
|
|
pattern = "^White: Total$", replacement = "White")) %>%
|
|
mutate(Ethnicity = str_replace_all(Ethnicity,
|
|
pattern = "^Mixed: Total$", replacement = "Mixed")) %>%
|
|
mutate(Ethnicity = str_replace_all(Ethnicity,
|
|
pattern = "^Asian: Total$", replacement = "Asian")) %>%
|
|
mutate(Ethnicity = str_replace_all(Ethnicity,
|
|
pattern = "^Black or Black British: Total$", replacement = "Black")) %>%
|
|
mutate(Ethnicity = str_replace_all(Ethnicity,
|
|
pattern = "^Chinese or Other ethnic group: Total$", replacement = "Other"))
|
|
uk_census_2011_religion_ethnicity <- uk_census_2011_religion_ethnicity %>%
|
|
mutate(Ethnicity = str_replace_all(Ethnicity,
|
|
pattern = "^White: Total$", replacement = "White")) %>%
|
|
mutate(Ethnicity = str_replace_all(Ethnicity,
|
|
pattern = "^Mixed/multiple ethnic group: Total$", replacement = "Mixed")) %>%
|
|
mutate(Ethnicity = str_replace_all(Ethnicity,
|
|
pattern = "^Asian/Asian British: Total$", replacement = "Asian")) %>%
|
|
mutate(Ethnicity = str_replace_all(Ethnicity,
|
|
pattern = "^Black/African/Caribbean/Black British: Total$", replacement = "Black")) %>%
|
|
mutate(Ethnicity = str_replace_all(Ethnicity,
|
|
pattern = "^Other ethnic group: Total$", replacement = "Other"))
|
|
uk_census_2021_religion_ethnicity <- uk_census_2021_religion_ethnicity %>%
|
|
mutate(Ethnicity = str_replace_all(Ethnicity,
|
|
pattern = "^White: Total$", replacement = "White")) %>%
|
|
mutate(Ethnicity = str_replace_all(Ethnicity,
|
|
pattern = "^Mixed or Multiple ethnic groups$", replacement = "Mixed")) %>%
|
|
mutate(Ethnicity = str_replace_all(Ethnicity,
|
|
pattern = "^Asian, Asian British or Asian Welsh$", replacement = "Asian")) %>%
|
|
mutate(Ethnicity = str_replace_all(Ethnicity,
|
|
pattern = "^Black, Black British, Black Welsh, Caribbean or African$", replacement = "Black")) %>%
|
|
mutate(Ethnicity = str_replace_all(Ethnicity,
|
|
pattern = "^Other ethnic group$", replacement = "Other"))
|
|
uk_census_2021_religion_ethnicity_percents <- uk_census_2021_religion_ethnicity %>%
|
|
group_by(C2021_ETH_8_NAME) %>%
|
|
mutate(Percentage = OBS_VALUE / sum(OBS_VALUE) * 100)
|
|
uk_census_2021_religion_ethnicity <- select(nomis_extract_census2021, GEOGRAPHY_NAME, C2021_RELIGION_10_NAME, C2021_ETH_8_NAME, OBS_VALUE) # <1>
|
|
uk_census_2021_religion_ethnicity <- filter(uk_census_2021_religion_ethnicity, GEOGRAPHY_NAME=="England and Wales" & C2021_RELIGION_10_NAME != "Total" & C2021_ETH_8_NAME != "Total") # <2>
|
|
uk_census_2021_religion_ethnicity <- filter(uk_census_2021_religion_ethnicity, C2021_ETH_8_NAME != "White: English, Welsh, Scottish, Northern Irish or British" & C2021_ETH_8_NAME != "White: Irish" & C2021_ETH_8_NAME != "White: Gypsy or Irish Traveller, Roma or Other White") # <3>
|
|
ggplot(uk_census_2021_religion_ethnicity, aes(fill=C2021_ETH_8_NAME, x=C2021_RELIGION_10_NAME, y=OBS_VALUE)) +
|
|
geom_bar(position="dodge", stat ="identity", colour = "black") +
|
|
scale_fill_brewer(palette = "Set1") +
|
|
ggtitle("Religious Affiliation in the 2021 Census of England and Wales") +
|
|
xlab("") + ylab("") +
|
|
theme(axis.text.x = element_text(angle = 90, vjust = 0.5, hjust=1)) # <4>
|
|
uk_census_2021_religion_ethnicity_white <- filter(uk_census_2021_religion_ethnicity, C2021_ETH_8_NAME == "White") # <1>
|
|
uk_census_2021_religion_ethnicity_nonwhite <- filter(uk_census_2021_religion_ethnicity, C2021_ETH_8_NAME != "White") # <2>
|
|
ggplot(uk_census_2021_religion_ethnicity_nonwhite, aes(fill=C2021_ETH_8_NAME, x=C2021_RELIGION_10_NAME, y=OBS_VALUE)) + geom_bar(position="dodge", stat ="identity", colour = "black") + scale_fill_brewer(palette = "Set1") + ggtitle("Religious Affiliation in the 2021 Census of England and Wales") + xlab("") + ylab("") + theme(axis.text.x = element_text(angle = 90, vjust = 0.5, hjust=1)) # <3>
|
|
uk_census_2021_religion_ethnicity_percents <- uk_census_2021_religion_ethnicity %>%
|
|
group_by(C2021_ETH_8_NAME) %>%
|
|
mutate(Percentage = OBS_VALUE / sum(OBS_VALUE) * 100)
|
|
ggplot(uk_census_2021_religion_ethnicity_percents, aes(fill=C2021_ETH_8_NAME, x=C2021_RELIGION_10_NAME, y=Percentage)) +
|
|
geom_bar(position="dodge", stat ="identity", colour = "black") +
|
|
scale_fill_brewer(palette = "Set1") +
|
|
ggtitle("Religious Affiliation in the 2021 Census of England and Wales") +
|
|
xlab("") + ylab("") +
|
|
theme(axis.text.x = element_text(angle = 90, vjust = 0.5, hjust=1))
|
|
ggplot(uk_census_2021_religion_ethnicity_nonwhite, aes(x=C2021_RELIGION_10_NAME, y=OBS_VALUE)) +
|
|
geom_bar(position="dodge", stat ="identity", colour = "black") +
|
|
facet_wrap(~C2021_ETH_8_NAME, ncol = 2) + scale_fill_brewer(palette = "Set1") +
|
|
ggtitle("Religious Affiliation in the 2021 Census of England and Wales") + xlab("") + ylab("") +
|
|
theme(axis.text.x = element_text(angle = 90, vjust = 0.5, hjust=1))
|
|
nomis_extract_census2001 <- readRDS(file = (here("example_data", "nomis_extract_census2001.rds")))
|
|
nomis_extract_census2011 <- readRDS(file = (here("example_data", "nomis_extract_census2011.rds")))
|
|
uk_census_2001_religion_ethnicity <- select(nomis_extract_census2001, GEOGRAPHY_NAME, C_RELPUK11_NAME, C_ETHHUK11_NAME, OBS_VALUE) # <1>
|
|
uk_census_2011_religion_ethnicity <- select(nomis_extract_census2011, GEOGRAPHY_NAME, C_RELPUK11_NAME, C_ETHPUK11_NAME, OBS_VALUE) # <1>
|
|
uk_census_2001_religion_ethnicity <- filter(uk_census_2001_religion_ethnicity, GEOGRAPHY_NAME=="England and Wales" & C_RELPUK11_NAME != "All categories: Religion") # <2>
|
|
uk_census_2011_religion_ethnicity <- filter(uk_census_2011_religion_ethnicity, GEOGRAPHY_NAME=="England and Wales" & C_RELPUK11_NAME != "All categories: Religion" & C_ETHPUK11_NAME != "All categories: Ethnic group") # <2>
|
|
uk_census_2001_religion_ethnicity <- uk_census_2001_religion_ethnicity %>% filter(grepl('Total', C_ETHHUK11_NAME)) # <3>
|
|
uk_census_2011_religion_ethnicity <- uk_census_2011_religion_ethnicity %>% filter(grepl('Total', C_ETHPUK11_NAME)) # <3>
|
|
uk_census_2011_religion_plot <- ggplot(uk_census_2011_religion_ethnicity, aes(x = C_RELPUK11_NAME, y = OBS_VALUE)) + geom_bar(stat = "identity") + theme(axis.text.x = element_text(angle = 90, vjust = 0.5, hjust=1))
|
|
uk_census_2001_religion_ethnicity$dataset <- c("2001") # <1>
|
|
uk_census_2011_religion_ethnicity$dataset <- c("2011") # <1>
|
|
uk_census_2021_religion_ethnicity$dataset <- c("2021") # <1>
|
|
names(uk_census_2001_religion_ethnicity) <- c("Geography", "Religion", "Ethnicity", "Value", "Year") # <2>
|
|
names(uk_census_2011_religion_ethnicity) <- c("Geography", "Religion", "Ethnicity", "Value", "Year") # <2>
|
|
names(uk_census_2021_religion_ethnicity) <- c("Geography", "Religion", "Ethnicity", "Value", "Year") # <2>
|
|
# Next we need to change the terms using mutate()
|
|
uk_census_2001_religion_ethnicity <- uk_census_2001_religion_ethnicity %>%
|
|
mutate(Ethnicity = str_replace_all(Ethnicity,
|
|
pattern = "^White: Total$", replacement = "White")) %>%
|
|
mutate(Ethnicity = str_replace_all(Ethnicity,
|
|
pattern = "^Mixed: Total$", replacement = "Mixed")) %>%
|
|
mutate(Ethnicity = str_replace_all(Ethnicity,
|
|
pattern = "^Asian: Total$", replacement = "Asian")) %>%
|
|
mutate(Ethnicity = str_replace_all(Ethnicity,
|
|
pattern = "^Black or Black British: Total$", replacement = "Black")) %>%
|
|
mutate(Ethnicity = str_replace_all(Ethnicity,
|
|
pattern = "^Chinese or Other ethnic group: Total$", replacement = "Other"))
|
|
uk_census_2011_religion_ethnicity <- uk_census_2011_religion_ethnicity %>%
|
|
mutate(Ethnicity = str_replace_all(Ethnicity,
|
|
pattern = "^White: Total$", replacement = "White")) %>%
|
|
mutate(Ethnicity = str_replace_all(Ethnicity,
|
|
pattern = "^Mixed/multiple ethnic group: Total$", replacement = "Mixed")) %>%
|
|
mutate(Ethnicity = str_replace_all(Ethnicity,
|
|
pattern = "^Asian/Asian British: Total$", replacement = "Asian")) %>%
|
|
mutate(Ethnicity = str_replace_all(Ethnicity,
|
|
pattern = "^Black/African/Caribbean/Black British: Total$", replacement = "Black")) %>%
|
|
mutate(Ethnicity = str_replace_all(Ethnicity,
|
|
pattern = "^Other ethnic group: Total$", replacement = "Other"))
|
|
uk_census_2021_religion_ethnicity <- uk_census_2021_religion_ethnicity %>%
|
|
mutate(Ethnicity = str_replace_all(Ethnicity,
|
|
pattern = "^White: Total$", replacement = "White")) %>%
|
|
mutate(Ethnicity = str_replace_all(Ethnicity,
|
|
pattern = "^Mixed or Multiple ethnic groups$", replacement = "Mixed")) %>%
|
|
mutate(Ethnicity = str_replace_all(Ethnicity,
|
|
pattern = "^Asian, Asian British or Asian Welsh$", replacement = "Asian")) %>%
|
|
mutate(Ethnicity = str_replace_all(Ethnicity,
|
|
pattern = "^Black, Black British, Black Welsh, Caribbean or African$", replacement = "Black")) %>%
|
|
mutate(Ethnicity = str_replace_all(Ethnicity,
|
|
pattern = "^Other ethnic group$", replacement = "Other"))
|
|
uk_census_merged_religion_ethnicity <- rbind(uk_census_2021_religion_ethnicity, uk_census_2011_religion_ethnicity)
|
|
uk_census_merged_religion_ethnicity <- rbind(uk_census_merged_religion_ethnicity, uk_census_2001_religion_ethnicity)
|
|
uk_census_merged_religion_ethnicity_nonwhite <- filter(uk_census_merged_religion_ethnicity, Ethnicity != "White")
|
|
ggplot(uk_census_merged_religion_ethnicity_nonwhite, aes(fill=Year, x=Religion, y=Value)) + geom_bar(position="dodge", stat ="identity", colour = "black") + facet_wrap(~Ethnicity, ncol = 2) + scale_fill_brewer(palette = "Set1") + ggtitle("Religious Affiliation in the 2001-2021 Census of England and Wales") + xlab("") + ylab("") + theme(axis.text.x = element_text(angle = 90, vjust = 0.5, hjust=1))
|
|
ggplot(uk_census_merged_religion_ethnicity_nonwhite, aes(fill=Year, x=Religion, y=Value)) +
|
|
geom_bar(position="dodge", stat ="identity", colour = "black") +
|
|
facet_wrap(~Ethnicity, ncol = 2) +
|
|
scale_fill_brewer(palette = "Set1") +
|
|
ggtitle("Religious Affiliation in the 2001-2021 Census of England and Wales") +
|
|
xlab("") + ylab("") +
|
|
theme(axis.text.x = element_text(angle = 90, vjust = 0.5, hjust=1))
|
|
library(scales) |> suppressPackageStartupMessages()
|
|
ggplot(uk_census_merged_religion_ethnicity_nonwhite, aes(fill=Year, x=Religion, y=Value)) + geom_bar(position="dodge", stat ="identity", colour = "black") + facet_wrap(~Ethnicity, ncol = 2) + scale_fill_brewer(palette = "Set1") + scale_y_continuous(labels = unit_format(unit = "M", scale = 1e-6), breaks = breaks_extended(8)) + ggtitle("Religious Affiliation in the 2001-2021 Census of England and Wales") + xlab("") + ylab("") + theme(axis.text.x = element_text(angle = 90, vjust = 0.5, hjust=1))
|
|
uk_census_merged_religion_ethnicity <- uk_census_merged_religion_ethnicity %>%
|
|
group_by(Ethnicity, Year) %>%
|
|
dplyr::mutate(Percent = Value/sum(Value))
|
|
ggplot(uk_census_merged_religion_ethnicity, aes(fill=Year, x=Religion, y=Percent)) + geom_bar(position="dodge", stat ="identity", colour = "black") + facet_wrap(~Ethnicity, scales="free_x") + scale_fill_brewer(palette = "Set1") + scale_y_continuous(labels = scales::percent) + ggtitle("Religious Affiliation in the 2001-2021 Censuses of England and Wales") + xlab("") + ylab("") + theme(axis.text.x = element_text(angle = 90, vjust = 0.5, hjust=1))
|
|
uk_census_merged_religion_ethnicity_plot <- ggplot(uk_census_merged_religion_ethnicity, aes(fill=Year, x=Religion, y=Percent)) +
|
|
geom_bar(position="dodge", stat ="identity", colour = "black") +
|
|
facet_wrap(~Ethnicity, scales="free_x") +
|
|
scale_fill_brewer(palette = "Set1") +
|
|
scale_y_continuous(labels = scales::percent) +
|
|
ggtitle("Religious Affiliation in the 2001-2021 Censuses of England and Wales") +
|
|
xlab("") + ylab("") +
|
|
theme(axis.text.x = element_text(angle = 90, vjust = 0.5, hjust=1))
|
|
ggsave("figures/chart.png", plot=uk_census_merged_religion_ethnicity_plot, width = 8, height = 10, units=c("in"))
|
|
uk_census_merged_religion_ethnicity_plot
|
|
setwd("/Users/kidwellj/gits/hacking_religion_textbook/hacking_religion")
|