library(tidyverse)
## -- Attaching packages --------------------------------------- tidyverse 1.3.1 --
## v ggplot2 3.3.5 v purrr 0.3.4
## v tibble 3.1.4 v dplyr 1.0.7
## v tidyr 1.1.3 v stringr 1.4.0
## v readr 2.0.1 v forcats 0.5.1
## -- Conflicts ------------------------------------------ tidyverse_conflicts() --
## x dplyr::filter() masks stats::filter()
## x dplyr::lag() masks stats::lag()
#library(httr)
#library(jsonlite)
library(lubridate)
##
## Attaching package: 'lubridate'
## The following objects are masked from 'package:base':
##
## date, intersect, setdiff, union
library(readr)
promotion <- read.csv("Promotion_Report.csv", header = TRUE, fileEncoding="UTF-8-BOM")
str(promotion)
## 'data.frame': 6 obs. of 4 variables:
## $ Race.Etnicity : chr "White (Not Hispanic or Latino)" "Hispanic or Latino" "Other" "Undisclosed" ...
## $ Female.Percentage: chr "16%" "7%" "3%" "4%" ...
## $ Male.Percentage : chr "36%" "4%" "1%" "4%" ...
## $ Grand.Total : chr "52%" "11%" "3%" "8%" ...
library(janitor)
##
## Attaching package: 'janitor'
## The following objects are masked from 'package:stats':
##
## chisq.test, fisher.test
promotion1 <- promotion %>%
clean_names()
promotion1
## race_etnicity female_percentage
## 1 White (Not Hispanic or Latino) 16%
## 2 Hispanic or Latino 7%
## 3 Other 3%
## 4 Undisclosed 4%
## 5 Asian (Not Hispanic or Latino) 5%
## 6 Black or African American (Not Hispanic or Latino) 7%
## male_percentage grand_total
## 1 36% 52%
## 2 4% 11%
## 3 1% 3%
## 4 4% 8%
## 5 2% 7%
## 6 12% 19%
promotion1$female_percentage <- as.numeric(gsub("\\%", "", promotion1$female_percentage))
promotion1$male_percentage <- as.numeric(gsub("\\%", "", promotion1$male_percentage))
promotion1$grand_total <- as.numeric(gsub("\\%", "", promotion1$grand_total))
promotion1$race_etnicity[promotion1$race_etnicity == "White (Not Hispanic or Latino)"] <- "White"
promotion1$race_etnicity[promotion1$race_etnicity == "Asian (Not Hispanic or Latino)"] <- "Asian"
promotion1$race_etnicity[promotion1$race_etnicity == "Black or African American (Not Hispanic or Latino)"] <- "Black or African American"
promotion1
## race_etnicity female_percentage male_percentage grand_total
## 1 White 16 36 52
## 2 Hispanic or Latino 7 4 11
## 3 Other 3 1 3
## 4 Undisclosed 4 4 8
## 5 Asian 5 2 7
## 6 Black or African American 7 12 19
promotion2 <- promotion1 %>%
mutate(female_per = (female_percentage * 100) / sum(female_percentage)) %>%
mutate(male_per = (male_percentage * 100) / sum(male_percentage)) %>%
mutate_if(is.numeric, round, digits= 1)
promotion2
## race_etnicity female_percentage male_percentage grand_total
## 1 White 16 36 52
## 2 Hispanic or Latino 7 4 11
## 3 Other 3 1 3
## 4 Undisclosed 4 4 8
## 5 Asian 5 2 7
## 6 Black or African American 7 12 19
## female_per male_per
## 1 38.1 61.0
## 2 16.7 6.8
## 3 7.1 1.7
## 4 9.5 6.8
## 5 11.9 3.4
## 6 16.7 20.3
promotion_female <- promotion2
promotion_female <- data.frame(
group = c("White", "Asian", "Black or African American", "Undisclosed", "Other", "Hispanic or Latino"),
value = c(38.1, 16.7, 7.1, 9.5, 11.9, 16.7)
)
promotion_female
## group value
## 1 White 38.1
## 2 Asian 16.7
## 3 Black or African American 7.1
## 4 Undisclosed 9.5
## 5 Other 11.9
## 6 Hispanic or Latino 16.7
library(RColorBrewer)
color <- brewer.pal(length(count), "Set1")
## Warning in brewer.pal(length(count), "Set1"): minimal value for n is 3, returning requested palette with 3 different levels
pie(promotion_female$value,
labels=as.character(paste(promotion_female$group, paste0(promotion_female$value, "%"))),
main="Female Promotions",
clockwise=TRUE, col = color)

promotion_male <- promotion2
promotion_male <- data.frame(
group = c("White", "Asian", "Black or African American", "Undisclosed", "Other", "Hispanic or Latino"),
value = c(61, 6.8, 1.7, 6.8, 3.4, 20.3)
)
promotion_female
## group value
## 1 White 38.1
## 2 Asian 16.7
## 3 Black or African American 7.1
## 4 Undisclosed 9.5
## 5 Other 11.9
## 6 Hispanic or Latino 16.7
pie(promotion_male$value,
labels=as.character(paste(promotion_male$group, paste0(promotion_male$value, "%"))),
main="Male Promotions",
clockwise=TRUE, col = color)
