Skip to content

Commit

Permalink
Merge pull request #26 from LaunchCodeEducation/a2-call-center
Browse files Browse the repository at this point in the history
A2 call center
  • Loading branch information
jwoolbright23 authored Apr 5, 2024
2 parents 7c7728d + 82e0bf4 commit fcf0d0e
Show file tree
Hide file tree
Showing 6 changed files with 173 additions and 0 deletions.
48 changes: 48 additions & 0 deletions content/assignments/assignment2/_index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,48 @@
+++
pre = "<b>A2: </b>"
title = "Call Center Cleanup"
date = 2023-05-25T12:55:09-05:00
draft = false
weight = 3
+++

For this assignment, we will be working with call center data. You can start
working on the assignment after the first lesson on Exploratory Data Analysis.
Make sure to read the whole assignment before starting anything! As you code
along in the Jupyter notebook, you are asked to make note of the results of
your analysis. Do so by clicking on the results box and adding your notes
beside each question.

## Business Issue and Understanding

You are working for a company that has two call centers: the North Call
Center and the South Call Center. The company is looking to possibly hire five
additional reps to enhance customer experience. Your task is to explore how
efficient the current reps are in each branch to determine which branch would
benefit from additional assistance.

### How the Call Center Works

Call center representatives are assigned queues. When calls are assigned to a
queue, the call is assigned to the next person in line in the queue. After a call
is assigned to a representative, the amount of time between assignment and the
call starting is divided into busy minutes and not ready minutes. If the call is
incoming and a customer is waiting on the phone for a rep, the time is split into
three categories: busy minutes, not ready minutes, and incoming call wait time.
Once the rep has the customer on the phone, there might be during call wait time,
where the call is put on hold while the rep gets an answer for the customer.

## Getting Started

Fork [this GitHub repository](https://github.com/LaunchCodeEducation/call-center-cleanup-assignment), clone it to your computer, and open it inside of a new notebook.

## Submitting Your Work

When you are finished, make sure to push your changes up to GitHub. Copy the link to your GitHub
repository and paste it into the submission box in Canvas for Graded Assignment #2: Call Center Cleanup and click *Submit*.

{{% notice blue Note "rocket" %}}
The following tasks and questions in the textbook for this assignment are also located within the notebook from the above GitHub repository. You must save the answers to the questions within your notebook for grading.
{{% /notice %}}

{{% children %}}
29 changes: 29 additions & 0 deletions content/assignments/assignment2/task-five/_index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
+++
title = "Task 5: Summarize and Bonus Mission"
date = 2023-05-25T12:55:09-05:00
draft = false
weight = 5
+++


{{% notice blue Note "rocket" %}}
The following questions can also be found within the notebook containing the `Call_Center_Cleanup.ipynb` assignment file and are meant to be answered within.
{{% /notice %}}

With what you know now about the two call centers and the entire company, answer the following questions. Note that while this is subjective, you should include relevant data to back up your opinion.

{{% notice green Question "rocket" %}}
Using KPIs such as average abandonment rate, service level and average speed of answer, in your opinion, which one of the two branches is operating more efficiently? Why?
{{% /notice %}}

{{% notice green Question "rocket" %}}
Based on the number of reps in each branch and how quickly the reps are working, in your opinion, which branch would benefit from the extra help?
{{% /notice %}}

{{% notice green Question "rocket" %}}
Now that you have explored the datasets, is there any data or information that you wish you had in this analysis?
{{% /notice %}}

## Bonus Mission

Create a visualization that answers this question: For each call purpose, how many calls (incoming and outgoing) take place in each time block?
18 changes: 18 additions & 0 deletions content/assignments/assignment2/task-four/_index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
+++
title = "Task 4: Data Visualization"
date = 2023-05-25T12:55:09-05:00
draft = false
weight = 4
+++

This fourth task of this assignment is to clean your data! You should feel comfortable beginning this task after you have completed [Chapter 17: Data Visualization with Python]({{% relref "../../../data-visualization/_index.md" %}}).

Create a visualization for each of the following questions. Some of the code to handle aggregating and storing data may be written for you. For each visualization, you choose the chart style that you feel suits the situation best. Make note of the chart style you chose within the notebook and why.

{{% notice green Question "rocket" %}}
What is the average abandonment rate per queue?
{{% /notice %}}

{{% notice green Question "rocket" %}}
What is the service level percentage and average speed of answer for each rep in the North Branch?
{{% /notice %}}
26 changes: 26 additions & 0 deletions content/assignments/assignment2/task-one/_index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
+++
title = "Task 1: EDA"
date = 2023-05-25T12:55:09-05:00
draft = false
weight = 1
+++

This first task of this assignment is to perform some exploratory data analysis! You should feel comfortable beginning this task after you have completed [Chapter 14: Exploratory Data Analysis with Pandas]({{% relref "../../../eda-with-pandas/_index.md" %}}).

In the process of learning more about the two datasets, answer the following questions. Use the code blocks within the notebook to begin cleaning your data. At the end of the notebook, record your answers.

{{% notice green Question "rocket" %}}
How many reps are in the South branch?
{{% /notice %}}

{{% notice green Question "rocket" %}}
What is the average busy minutes, not ready minutes, incoming wait time, and during call wait time for the North branch?
{{% /notice %}}

{{% notice green Question "rocket" %}}
What is the average busy minutes, not ready minutes, incoming wait time, and during call wait time for the South branch?
{{% /notice %}}

{{% notice green Question "rocket" %}}
What is the number of calls taken for each time block(Both North and South combined)?
{{% /notice %}}
26 changes: 26 additions & 0 deletions content/assignments/assignment2/task-three/_index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
+++
title = "Task 3: Data Manipulation"
date = 2023-05-25T12:55:09-05:00
draft = false
weight = 3
+++

This third task of this assignment involves manipulating your data. You should feel comfortable beginning this task after you have completed [Chapter 16: Data Manipulation]({{% relref "../../../data-manipulation/_index.md" %}}).

Before you begin answering any questions, combine the two existing datasets together within your notebook to create a third dataframe called df. You can use this third dataframe to compare the two call centers to company-wide trends.

{{% notice green Question "rocket" %}}
Group by Rep ID and sum the resulting structure. Sort by calls to determine which rep in each branch has the highest number of calls.
{{% /notice %}}

{{% notice green Question "rocket" %}}
The average call abandonment rate is a KPI when it comes to determining call center efficiency. As you may recall, abandoned calls are calls where the customer hangs up due to long call times. What is the average call abandonment rate for each branch and the whole company? Do any of these fall out of the optimal range of 2-5%?
{{% /notice %}}

{{% notice green Question "rocket" %}}
Service level is another KPI when it comes to measuring call center efficiency. Service level is the percentage of calls answered within a specific number of seconds. In the case of your employer, their ideal time frame is 2 seconds. What is the percentage of calls answered within 2 seconds for each branch and the entire company?
{{% /notice %}}

{{% notice green Question "rocket" %}}
For each branch and the entire company, what is the average speed of answer?
{{% /notice %}}
26 changes: 26 additions & 0 deletions content/assignments/assignment2/task-two/_index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
+++
title = "Task 2: Cleaning Data"
date = 2023-05-25T12:55:09-05:00
draft = false
weight = 2
+++

This second task of this assignment is to clean your data! You should feel comfortable beginning this task after you have completed [Chapter 15: Cleaning Data with Pandas]({{% relref "../../../cleaning-pandas/_index.md" %}}).

When cleaning the datasets, you may find that there isn't dirty data to clean. That is okay! Below are some questions you need to answer about the data sets.

{{% notice green Question "rocket" %}}
Is there any missing data and if yes explain what you would do with the missing data and why?
{{% /notice %}}

{{% notice green Question "rocket" %}}
In the North data set, there are two separate "YES" values for a sale. Why and how did you rectify the issue?
{{% /notice %}}

{{% notice green Question "rocket" %}}
Are there duplicates in the two data sets? If there are, how did you handle them?
{{% /notice %}}

{{% notice green Question "rocket" %}}
Is any of the data in the two data sets unnecessary? If yes, how did you handle it?
{{% /notice %}}

0 comments on commit fcf0d0e

Please sign in to comment.