Electronic Waste is considered hazardous as it often contains lead or mercury. There are many recyclers that will purchase e-waste by the kilogram, or you may drop it off for free at your local transfer station. The process of E Waste Recycling is in fact environmentally responsible when completed properly, but it would be better if their life expectancy was extended through donation or cleaning. Regardless of what happens, the most important thing is to protect our land and water from being polluted by a constant stream of fast fashion electronics with short life expectancies.
Contents Processing Centre provides a slightly better option than general e-waste recycling. We collect electronics for a different charity each month and include any electronics that have been damaged by insurance claims. We then submit the e-waste to Computers for Kids, capturing items that can be provided to local youth as educational tools or repaired and sold to provide support for the charity.
Another option before recycling would be to have the items cleaned. Our reasonably priced and environmentally responsible electronics cleaning capabilities may extend the life expectancy of your existing computer and electronics equipment.
Since opening, CPC has inspected, cleaned and recovered $1,329,742.15 of fire or flood affected electronics equipment. Translating into 47.81t in direct landfill offsets and 420.05t of CO2 offsets, which theoretically could be doubled as the items original life expectancies were achieved making it unnecessary to replace them with new. We have always taken care to recycle items that could not be recovered.
Smaller items can be dropped off at the front door and larger items can be received at bay 1 between business hours from 8:30 am to 4:00pm.
The following analysis was generated using the RMarkdown Package in RStudio. Generally I import datasets into the Global Environment and save them as “myData.RData”. This provides a bridge from the RStudio to the RMarkdown worksheet and is helpful for refreshing the data after clearing unwanted objects from the workspace.
knitr::opts_chunk$set(echo = TRUE)
load("myData.RData")
library(tidyverse)
library(rbokeh)
library(naniar)
`%notin%` = function(x,y) {!(x %in% y)} #reversing the %in% function for slicingI’ve downloaded a small dataset from Open Canada which contains census data from 2015 and 2017 specific to the status or “what has been done” with common household hazardous waste.
The data is contained in a standard census format explained by the Statistics Canada User Guide. Reviewing the variable documentation will familiarize you with a project and provide an opportunity to reflect on potential insights.
#minor cleanup, quickly rename the columns and the dataset for easier reference
hazard_raw <- X38100126
colnames(hazard_raw) <- c("year", "region", "DGUID", "classification", "UOM",
"UOM_ID", "scalar_factor", "scalar_id", "vector", "coordinate",
"value", "status", "symbol", "terminated", "decimals")When exploring a dataset for the first time I prefer to quickly visualize the missingness using the Naniar package rather than reviewing a summary. It was developed to work at the speed of thought and there are many useful visualizations.
#calculate the percentage of missing values (yes I know that it's visible on the plot)
round(n_miss(hazard_raw$value) / nrow(hazard_raw), 2)## [1] 0.68
The only real concern here is the large number of missing values in the “value” column which represents the percentage of respondents with e-waste.
My questions:
Determining the reason behind the missingness is difficult, certainly when there is no explanation. We need to decide if the value is MCAR (Missing Completely at Random), MAR (Missing at Random) or MNAR (Missing Not at Random).
With 68% of the rows containing missing values “Missing at Random?” and only a single 0 we will exclude the NA’s from our analysis which unfortunately considers two thirds of the data.
Unfortunately with such a small dataset there is really no opportunity for modelling.
For this project I have written “hazard_raw” to a csv file and used the “remove duplicates” and “autofill features” in excel to quickly create a classification_table and a regional_table for the purposes of joining.
## [1] 136
## [1] 48
I’ve gravitated to R mainly due to the functionality and readability of the code. The tidyverse is a collection of packages that work in concert to clean, model and summarize your data.
classification_table - 136 unique classifications distilled into three variables “waste_status”, “waste_subcategory” and “waste_category”
regional_table 48 unique regions have been separated into Provinces.
The following code will join the tables, filter out the missing values and create a column with the percentage value.
#convert the percentage values
hazard_cln <- hazard_raw %>%
left_join(classification_table, by = "classification") %>%
left_join(regional_table, by = "region") %>%
filter(!is.na(value)) %>%
mutate(percentage = value / 100)Extract summary statistics by nesting the data comparing them with the summary percentages in the original stats Canada census data.
library(tidyverse)
#filter out the ambiguous regions and nest the data
hazard_nested <- hazard_cln %>%
select(year, region, waste_status, waste_category, province, percentage) %>%
filter(region %notin% c("Canada", "Non-census metropolitan areas", "All census metropolitan areas"),
waste_category == "E-Waste") %>%
group_by(waste_status) %>%
nest()
#calculate the average percentage of the waste_status for all of the provinces
mean_status <- hazard_nested %>%
mutate(calculated_average = round(map_dbl(data, .f = ~mean(.x$percentage)), 2)) %>%
unnest(calculated_average)
#cross reference the summary percentages prepared in the dataset using the same technique
hazard_canada_nested <- hazard_cln %>%
select(year, region, waste_status, waste_category, province, percentage) %>%
filter(region == "Canada",
waste_category == "E-Waste") %>%
group_by(waste_status) %>%
nest()
mean_canada <- hazard_canada_nested%>%
mutate(stats_canada_average = round(map_dbl(data, .f = ~mean(.x$percentage)), 2)) %>%
unnest(stats_canada_average)
#combine the lists and compare the results
mean_combined <- mean_canada %>%
left_join(mean_status, by = "waste_status")
mean_combined[, c(1, 3, 5)]Yes there is a difference from my nested average and statistics Canada’s average; rather than pour over the math lets agree to disagree. I recalculated including the “Non-census metropolitan areas”, “All census metropolitan areas”, but the difference in the results was not significant.
“waste_status” was sorted into the following categories
On the bright side Canadians that responded to the survey appear to be sending nearly 60% of their E-waste to depots or recyclers while holding onto 30%.
It appears that census respondents are sending 4% - 6% of their E-Waste to their local landfills
The following Rbokeh code creates an interactive plot detailing the waste_status of each province.
Hover over the color blocks to see the percentage of census respondents and the status of the hazardous waste.
library(rbokeh)
hazard_plot <- hazard_cln %>%
select(year, region, waste_status, waste_category, province, percentage) %>%
filter(region %notin% c("Canada", "Non-census metropolitan areas", "All census metropolitan areas"),
waste_category == "E-Waste") %>%
group_by(waste_status) %>%
mutate(provincial_average = round(mean(percentage), 2)) %>%
figure(title = "Provincial Status of E-Waste",
ylab = "Pecentage", xlab = "Province",
xgrid = FALSE, ygrid = FALSE,
width = 500, height = 600) %>%
ly_bar(x = province, y = provincial_average,
color = waste_status,
hover = TRUE) %>%
theme_legend(background_fill_alpha = 0.1,
background_fill_color = "#FFFFFF") %>%
theme_axis("x", major_label_orientation = 90) %>%
set_palette(discrete_color = pal_color(c("#ccffcc", "#b3f0ff", "#cc99ff", "#b3cccc",
"#69be28", "#c0bed1", "#66b5ff", "#66ffff"))) %>%
theme_title(text_font_size = 14)
#call the glyph
hazard_plotCanadian’s overall have been doing a great job keeping electronics out of landfills.
On average, Ontario respondents were recycling nearly 60% of their e-waste in 2015 and 2017, with 30% potential e-waste in their homes available to submit to their local depot or recycler.
Thanks for taking the time to review and if you live in Windsor, Ontario please participate in our monthy e-waste recycling drives for charity.