<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: DataWired22</title>
    <description>The latest articles on DEV Community by DataWired22 (@datawired22).</description>
    <link>https://dev.to/datawired22</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F1001518%2Ffedcace5-d4d2-44a6-9da7-23e5227e1c9c.png</url>
      <title>DEV Community: DataWired22</title>
      <link>https://dev.to/datawired22</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/datawired22"/>
    <language>en</language>
    <item>
      <title>Case-Study: HR Analytics in PowerBI</title>
      <dc:creator>DataWired22</dc:creator>
      <pubDate>Wed, 01 Mar 2023 10:37:33 +0000</pubDate>
      <link>https://dev.to/datawired22/case-study-hr-analytics-in-powerbi-1jih</link>
      <guid>https://dev.to/datawired22/case-study-hr-analytics-in-powerbi-1jih</guid>
      <description>&lt;h2&gt;
  
  
  Summary of case study
&lt;/h2&gt;

&lt;p&gt;This case study is to apply skills developed through the Power BI course offered by Data Camp using a real-world problem. This is the second project assignment.&lt;/p&gt;

&lt;h2&gt;
  
  
  The Problem
&lt;/h2&gt;

&lt;p&gt;In this case study, a fictitious client, Atlas Labs, have the primary goal of monitoring Key HR metrics on employees and understanding what factors impact attrition (Employee attrition is the naturally occurring, voluntary departure of employees from a company)&lt;/p&gt;

&lt;h2&gt;
  
  
  Project Approach
&lt;/h2&gt;

&lt;p&gt;As we build their report, it is key to understand the process we will follow in our report development in PowerBI. The process is summarized below:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 1: Building the data model and analyzing the data&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Requirements gathering&lt;/li&gt;
&lt;li&gt;Data Connections&lt;/li&gt;
&lt;li&gt;Data Transformation&lt;/li&gt;
&lt;li&gt;Building the data model&lt;/li&gt;
&lt;li&gt;Writing DAX measures&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Step 2: Report Design&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Branding&lt;/li&gt;
&lt;li&gt;Defining the report layout&lt;/li&gt;
&lt;li&gt;Building your report with chart visualizations&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  The Dataset: Requirements gathering, Data Connections and Data Transformation
&lt;/h2&gt;

&lt;p&gt;For this case study, we will use the Kimball modelling approach as we model our data.&lt;/p&gt;

&lt;p&gt;The Fact table stores the information about employee yearly reviews. We will also be working with multiple dimension tables to provide more context to the data we are working with. The final data model will follow a snowflake schema below.&lt;/p&gt;

&lt;p&gt;The first step we will take is to open an empty PowerBI file and load and prepare our &lt;a href="https://assets.datacamp.com/production/repositories/6064/datasets/e2f7bf7250e8c73f79deffeed749aa1d08cd2591/Case%20Study_%20HR%20Analytics%20in%20Power%20BI%20-%20Exercises%20and%20Datasets.pdf" rel="noopener noreferrer"&gt;dataset&lt;/a&gt;. We will import all the CSV files and load them into PowerBI. Ensure that the data is clean. You may refer to this &lt;a href="https://dev.to/datawired22/data-analysis-flow-in-5-steps-using-powerbi-jm1"&gt;article&lt;/a&gt; on the expectations of clean data. Ensure you add either Fact OR Dim at the beginning of each table name, depending on the type of table it is.&lt;/p&gt;

&lt;h2&gt;
  
  
  Building the data model: Date dimension and relating tables
&lt;/h2&gt;

&lt;p&gt;In any Power BI report, it is recommended to have a dedicated date table for accurate date and time reporting. In this stage, we will also model our data. This will enable us to connect our six different tables.&lt;/p&gt;

&lt;p&gt;The first step we will take is to create a dedicated date table. &lt;a href="https://docs.google.com/document/d/1PpxSleyYT3BILZ3vVaa_BMYaEFvLgyT7kdT0ghr-704/edit?usp=sharing" rel="noopener noreferrer"&gt;Here is the DAX code&lt;/a&gt; we will use for the calculated Date Table. Next we will connect the following tables:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;&lt;p&gt;Connect the DimDate table to FactPerfomanceRating and the DimEmployee table. Note that the last relationship will be inactive because we cannot have more than one active relationship between the same tables at once, in PowerBI.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Connect the DimEducationLevel table to the DimEmployee table&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Connect FactPerfomanceRating table columns (EnvironmentSatisfaction, JobSatisfaction, RelationshipSatisfaction and WorkLifeBalance) to DimSatisfactionLevel table and use EnvironmentSatisfaction as the active connection.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Connect FactPerfomanceRating table columns (SelfRating, ManagerRating) to DimRatingLevel and use the SelfRating column as the active connection.&lt;/p&gt;&lt;/li&gt;
&lt;/ul&gt;

&lt;h2&gt;
  
  
  Exploring the data
&lt;/h2&gt;

&lt;p&gt;We will explore our data and produce high level metrics to understand the attrition at the company. Rename page 1 of your PowerBI file to “Overview” and create a new table called _Measures to store all the measures that we will create. We will then display these measures using the card visual in our overview page. Let’s create the measures below:&lt;/p&gt;

&lt;p&gt;A measure to take count of all the employees&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;

TotalEmployees = DISTINCTCOUNT(DimEmployee[EmployeeID])


&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;Measures that take count of all employees that are currently active or inactive&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;

ActiveEmployee = CALCULATE([TotalEmployees], DimEmployee[Attrition] = "No")


&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;
&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;

InactiveEmployee = CALCULATE([TotalEmployees], DimEmployee[Attrition] = "Yes")


&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;Attrition Rate based on the measures we have created above.&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;

% Attrition Rate = [InactiveEmployee]/[TotalEmployees]


&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fzwrtbdfqe4r5bjhnb3ys.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fzwrtbdfqe4r5bjhnb3ys.jpg" alt="Image description"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Hiring trends over time
&lt;/h2&gt;

&lt;p&gt;Next, we will analyze Atlas Labs' hiring trends over time to see where they have had the biggest growth in employees.&lt;/p&gt;

&lt;p&gt;We will create a new measure called TotalEmployeesDate that uses the CALCULATE() function on our TotalEmployees Measure and the USERELATIONSHIP function in the filter. You may read more about USERELATIONSHIP function &lt;a href="https://learn.microsoft.com/en-us/dax/userelationship-function-dax" rel="noopener noreferrer"&gt;here&lt;/a&gt;&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;

TotalEmployeesDate = 
CALCULATE (
    [TotalEmployees],
    USERELATIONSHIP ( DimEmployee[HireDate], DimDate[Date] )
)


&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;Go ahead and create a stacked column chart. Add attrition to the legend on the chart to see the split of employees by active vs inactive. Change the X-axis from continuous to Categorical and Rename the chart to “Employee Hiring Trends”&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fny33pduqe1mbds8ytqkl.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fny33pduqe1mbds8ytqkl.jpg" alt="Image description"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Analyzing departments and Job Roles
&lt;/h2&gt;

&lt;p&gt;The next step, we will look into the typical roles department managers are hiring into the organization. This will enable every department to plan for new hiring requests in the future.&lt;/p&gt;

&lt;p&gt;Create a clustered bar chart to show ActiveEmployees by Department. Rename this chart to “Active Employees by Department”. Add a treemap visualization to show Active employees by department and job role. Rename this chart to “Active Employees by Department and job role.”&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fkrrnqcqr0yrik1fry3xf.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fkrrnqcqr0yrik1fry3xf.jpg" alt="Image description"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Keys Insights so far
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Atlas Labs has employed over 1,470 people&lt;/li&gt;
&lt;li&gt;Atlas Labs currently employs over 1,200 people&lt;/li&gt;
&lt;li&gt;The largest department so far is Technology&lt;/li&gt;
&lt;li&gt;The attrition rate for employees leaving the organization is 16%&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Is Atlas labs competitive enough as an employer?&lt;/p&gt;

&lt;h2&gt;
  
  
  Demographics: age and gender
&lt;/h2&gt;

&lt;p&gt;The next step is to develop a good understanding of the diversity and inclusion metrics. We will focus on employee age and gender. Let’s create a new page in the report called “Demographics”&lt;/p&gt;

&lt;p&gt;Below we can see the minimum and maximum value for age displayed by card visuals.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fzhg8tq3w7p3vsaw5jo50.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fzhg8tq3w7p3vsaw5jo50.jpg" alt="Image description"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;We want to take a closer look at the age distribution of employees so we will create a conditional column called AgeBins that separates employees' ages by bins in the following structure: &amp;lt;\20, 20-29, 30-39, 40-49, 50&amp;gt;.&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;

=Table.AddColumn(#"Changed Type", "AgeBins", each if [Age] &amp;gt;= 50 then "50&amp;gt;" else if [Age] &amp;gt;= 40 then "40-49" else if [Age] &amp;gt;= 30 then "30-39" else if [Age] &amp;gt;= 20 then "20-29" else "&amp;lt;20")


&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;Next, we will visualize our results. We will create a visualization that shows Employees by age and another visualization that shows Total employees value distribution across Age Bins and Gender.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F63ecsj47i44b59znp8s9.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F63ecsj47i44b59znp8s9.jpg" alt="Image description"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;It would be beneficial to add a page level filter that enables you to look at the report page based on whether an employee is currently active or not.&lt;/p&gt;

&lt;h2&gt;
  
  
  Marital Status and ethnicity
&lt;/h2&gt;

&lt;p&gt;Next, we will be looking at further employee information regarding marital status and ethnicity. We will first visualize the count of all employees by marital status&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fzawy7dxa5i1y4su0lva5.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fzawy7dxa5i1y4su0lva5.jpg" alt="Image description"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Next, we will create a measure, AverageSalary inside the measure table. This works out the average salary of all employees.&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;

AverageSalary = AVERAGE(DimEmployee[Salary])
Below is a visualization of employees by their average salary and ethnicity.


&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;
&lt;h2&gt;
  
  
  Performance Tracker 1:
&lt;/h2&gt;

&lt;p&gt;The HR Team would like to track the performance of the employees based on yearly performance reviews. We will create a new page in the report called “Performance Tracker”.&lt;/p&gt;

&lt;p&gt;We will add a slicer with employee full name which has single select and search enabled. We will go on to add a card which shows selected employee start date, last review date and next review date&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fvytnu7jz71cyr90bjfkb.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fvytnu7jz71cyr90bjfkb.jpg" alt="Image description"&gt;&lt;/a&gt;&lt;/p&gt;
&lt;h2&gt;
  
  
  Performance Tracker 2
&lt;/h2&gt;

&lt;p&gt;Next we would like to take a closer look at individual review ratings. We will create satisfaction metrics inside the _Measures table and visualise them.&lt;/p&gt;
&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;

EnvironmentSatisfaction = CALCULATE(
MAX(FACTPerformanceRating[EnvironmentSatisfaction]),
USERELATIONSHIP(FACTPerformanceRating[EnvironmentSatisfaction], DimSatisfiedLevel[SatisfactionID]))


&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;
&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;

JobSatisfaction = MAX(FactPerformanceRating[JobSatisfaction])


&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;
&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;

RelationshipSatisfaction = CALCULATE(
MAX(FACTPerformanceRating
[RelationshipSatisfaction]),
USERELATIONSHIP(FACTPerformanceRating
[RelationshipSatisfaction], DimSatisfiedLevel[SatisfactionID])
)


&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fkj136625ybsy789o6wqe.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fkj136625ybsy789o6wqe.jpg" alt="Image description"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  More Insights uncovered
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;Majority of employees are between 20-29 yrs&lt;/li&gt;
&lt;li&gt;Atlas Labs employs 2.7% more women than men&lt;/li&gt;
&lt;li&gt;Employees who identify as&lt;/li&gt;
&lt;li&gt;Non Binary makeup 8.5% of total employees&lt;/li&gt;
&lt;li&gt;White have the highest average salary&lt;/li&gt;
&lt;li&gt;Mixed or multiple ethnic groups have one of the lowest average salaries&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;From the charts we’ve built, we can also see that the employees that have been considered frequent travelers have the highest attrition rate despite only making up 19% of the total hires.&lt;/p&gt;

&lt;h2&gt;
  
  
  Creating a cohesive report
&lt;/h2&gt;

&lt;p&gt;The final step is preparing to deliver our report to the key stakeholders at Atlas Labs. We will focus on delivering insights on attrition and what factors affect employee retention.&lt;/p&gt;

&lt;p&gt;Here is the Overview Dashboard.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fsbb6muj8m7derg0hjzrv.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fsbb6muj8m7derg0hjzrv.jpg" alt="Image description"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://github.com/DataWired22/PowerBI-HR-Analytics-Datacamp-Case-Study-" rel="noopener noreferrer"&gt;Here is the final report delivered&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Thank you for reading&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Author: Gcinithemba Sherilyn Maphosa&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Data Wired&lt;/em&gt;&lt;/p&gt;

</description>
    </item>
    <item>
      <title>A 5 step approach to Data analysis in PowerBI</title>
      <dc:creator>DataWired22</dc:creator>
      <pubDate>Wed, 08 Feb 2023 10:28:23 +0000</pubDate>
      <link>https://dev.to/datawired22/data-analysis-flow-in-5-steps-using-powerbi-jm1</link>
      <guid>https://dev.to/datawired22/data-analysis-flow-in-5-steps-using-powerbi-jm1</guid>
      <description>&lt;p&gt;As the data around us continues to become more available, it continues to grow both in amount and complexity, as does the need for an effective process to derive the value the data holds. This value is derived through data analysis.  The data analysis process typically moves through several iterative phases which we have grouped into 5 different steps. &lt;/p&gt;

&lt;p&gt;*&lt;em&gt;But first, what is data analysis? *&lt;/em&gt;&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Data analysis is the process of collecting, cleaning, modelling, analyzing, interpreting, and visualizing data to extract insights that support decision-making using various techniques and business intelligence tools.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;In this article, we’ll explain the different stages of the data analysis process. The article is aimed at helping you understand what happens at each step in the data analysis process flow. When you’re done, you’ll have a great understanding of the analysis flow which you may start incorporating even in your daily tasks. Here are the 5 steps we’ll go through:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Step 1: Ask questions&lt;/li&gt;
&lt;li&gt;Step 2: Data Collection&lt;/li&gt;
&lt;li&gt;Step 3: Cleaning the data&lt;/li&gt;
&lt;li&gt;Step 4: Analyzing the data&lt;/li&gt;
&lt;li&gt;Step 5: Communicate your results&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Step 1: Ask questions&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Questions help you identify the data you need to collect or use and help you focus on relevant parts of your data and direct your analysis towards meaningful insights. For example: What outcomes do you want to achieve? What specific issues would you like to address?  For subscription-based businesses, you might want to ask, what are the causes of customer churn and how can you reduce it ?  For an oncology center you might want to ask, what size range of each tumor  feature determines that a tumor is cancerous ? For a sales business you might want to ask, does  an increase in revenue lead to an increase in profit ? Or a business might what to find out possible future consumer behavior&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 2: Data Collection&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Once you understand the questions that you need to answer the focus of your analysis, you need to define the type of data you need and collect the appropriate data. This might be quantitative (numeric) data, e.g. sales figures, or qualitative (descriptive) data, such as customer surveys and  reviews. This data may be collected internally or externally. Internal data is data directly collected  by the company you’re doing the analysis for (First - party data). External data is data collected from other companies (Second-party data) or data generated from multiple sources which are usually open data repositories (Third-party data). &lt;/p&gt;

&lt;p&gt;The next step is for you to import this data into PowerBI desktop. Open PowerBI and open the Get Data dialog box directly by selecting the Get Data icon itself. You will find multiple options of importing data from different data sources.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fmoigporqqnjhrtxivy98.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fmoigporqqnjhrtxivy98.jpg" alt="Image description" width="293" height="564"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;This step is important because the nature of the collected data sources determines how in-depth the analysis is. You need to  make sure you have enough data to solve the questions.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 3: Cleaning the Data&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Once you have collected the data, you need to prepare it for analysis. This is called data cleaning. Data cleaning is a vital step in the data analysis process because the accuracy of your analysis will depend on the quality of your data. This process involves checking for incompleteness or inconsistencies and removing incorrect data. Clean data should have the characteristics below: &lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Free from missing values (nulls)&lt;/li&gt;
&lt;li&gt;Typos/data entry errors are corrected&lt;/li&gt;
&lt;li&gt;No duplicated data&lt;/li&gt;
&lt;li&gt;Irrelevant Data is excluded&lt;/li&gt;
&lt;li&gt;Outliers are dealt with (Kept at a certain value)&lt;/li&gt;
&lt;li&gt;Correct data types for all columns&lt;/li&gt;
&lt;li&gt;Column and table names are short and descriptive&lt;/li&gt;
&lt;li&gt;Consistently formatted&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;In powerBI, cleaning data is done through powerQuery.  A data manipulation framework present in  PowerBI which allows us to connect to and transform our data according to our needs in a series of transformations. Below are images of some power query functions that are used to clean data. &lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fgz3p7zzay1o749vtmvx9.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fgz3p7zzay1o749vtmvx9.jpg" alt="Power query" width="800" height="104"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fruw2y2y9yyyj1hceunem.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fruw2y2y9yyyj1hceunem.jpg" alt="Power query" width="800" height="106"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 4: Analyzing/Interpreting the data (Exploratory, Descriptive, Diagnostic, Predictive and Prescriptive analysis)&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Once the data is clean, you can start analyzing the data.The type of data analysis you carry out largely depends on what your goal is. &lt;/p&gt;

&lt;p&gt;The first step is to carry out exploratory analysis. This process will determine if your data is appropriate and ready for the next stages through  further sorting. This process will help you Uncover and resolve data quality issues such as detecting anomalies in your data set as well as understand existing patterns and correlations between variables. In this stage you may also create new variables and measures that will help you with the steps that will follow. New variables and measures are created using DAX( Data Analysis Expressions). DAX  is a programming language that is used throughout Microsoft Power BI for creating calculated columns, measures, and custom tables. It is a collection of functions, operators, and constants that can be used in a formula, or expression, to calculate and return one or more values. Below is a snapshot of what a DAX function looks like.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Churned = IF('Databel - Data'[Churn Label]="Yes", 1, 0)
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;The next step is to carry out descriptive analysis which identifies what has already happened. An example of this for a subscription based business concerned with customer churn, would be identifying that Region A has 15% customer churn. This summary will help you determine how to proceed.&lt;/p&gt;

&lt;p&gt;After descriptive analytics, you will need to carry out diagnostic analysis which focuses on understanding why we have the reasons for the results shown from the descriptive analysis. For instance, the reason for a 15% customer churn within region A would be because of competitors having better customer service and cheaper products. &lt;/p&gt;

&lt;p&gt;Another step is to carry out predictive analysis, this will allow you to identify future trends based on the historical data in your dataset. This type of analysis is commonly used to forecast future activity. For example, which customer demographic group is more likely to churn ? &lt;/p&gt;

&lt;p&gt;The last process of step 4 includes prescriptive analysis which allows you to make recommendations for the future. It incorporates aspects of all the other analyses. &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Step 5: Communicating/ Sharing your results&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;The final step of the entire analysis process is to share your insights. This involves presenting them in a manner that is understandable for everyone within the audience who will be receiving the analysis. In PowerBI, this is done through data storytelling, which involves turning your data into a compelling narrative. This will be through visualization using dashboards and reports.&lt;/p&gt;

&lt;p&gt;An example of a dashboard for customer churn analysis may be seen below. &lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F0a9w7mkuj3grdgd5t8di.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F0a9w7mkuj3grdgd5t8di.png" alt="PowerBI Dashboard" width="800" height="517"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;You may find the PowerBI file &lt;a href="https://github.com/DataWired22/Data-Visualizations/blob/main/PowerBI%20-%20Customer%20Churn%20Analysis/Databel%20Churn%20Customers%20Overview.png" rel="noopener noreferrer"&gt;here&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;In summary,  The steps above are the core steps for data analysis. They may be re - ordered or amended as per your need. From here, you should consider learning and mastering power BI DAX functions and familiarizing yourself with different concepts of data analytics. It's important to remember that data analysis is not a one-size-fits-all solution, and your results will depend on a variety of factors. The best way to get the most value out of your data analysis is by embedding it in your business strategy.&lt;/p&gt;

&lt;p&gt;Thank you for reading&lt;/p&gt;

&lt;p&gt;Author: Gcinithemba Sherilyn Maphosa, Data Wired&lt;/p&gt;

</description>
      <category>howto</category>
      <category>google</category>
      <category>opensource</category>
    </item>
    <item>
      <title>Case Study: Analyzing Customer Churn in Power BI</title>
      <dc:creator>DataWired22</dc:creator>
      <pubDate>Wed, 04 Jan 2023 13:56:28 +0000</pubDate>
      <link>https://dev.to/datawired22/case-study-analyzing-customer-churn-in-power-bi-3889</link>
      <guid>https://dev.to/datawired22/case-study-analyzing-customer-churn-in-power-bi-3889</guid>
      <description>&lt;h2&gt;
  
  
  Summary of case study
&lt;/h2&gt;

&lt;p&gt;This case study is for the purpose of applying skills developed through the Power Bi course offered by &lt;a href="//www.datacamp.com"&gt;Data Camp&lt;/a&gt; using a real-world problem. &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;The Problem:&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;The task is to solve customer churn for a Telecom provider called Databel where I will be using a fictitious churn dataset. I will be analyzing why customers are churning and the churn rate.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Defining churn&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;A good definition is the one from &lt;a href="https://www.investopedia.com/terms/c/churnrate.asp" rel="noopener noreferrer"&gt;Investopedia&lt;/a&gt;: “The churn rate, also known as the rate of attrition or customer churn, is the rate at which customers stop doing business with an entity.” &lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fwxo7ocsisnxbdf52gprm.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fwxo7ocsisnxbdf52gprm.png" alt="customers leaving business"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Calculating churn&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;The simplified formula for churn is to divide customers lost by the total number of customers. &lt;/p&gt;

&lt;p&gt;&lt;em&gt;Churn rate = customers lost/total number of customers&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Example:&lt;/strong&gt;&lt;br&gt;
&lt;em&gt;Churn rate = 10/100 = 10%&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;There are multiple methods to calculate churn, and depending on the industry. A traditional e-commerce platform might consider a certain customer a churner if he or she hasn’t made a purchase in the last 12 months.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;The data&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Key Characteristics:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;One big table with 29 different columns with one row per customer.&lt;/li&gt;
&lt;li&gt;Snapshot of the database at a specific moment in time, meaning there is no time dimension. &lt;/li&gt;
&lt;li&gt;The dataset contains more than just dimensions. Here is a view of the &lt;a href="https://assets.datacamp.com/production/repositories/5993/datasets/c55ad82061b13bc07f6516e51cba9883a90bfa27/Metadata%20-%20Case%20Study_Analyzing%20Customer%20Churn%20in%20Power%20BI.pdf" rel="noopener noreferrer"&gt;metadata&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Data check&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;The first step in any analysis is doing a data check. I will  create two measures to check if the count of customer ids is equal to the count of unique customer ids. This check is particularly important to prevent double-count costs later incase of duplicates.&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;

Number of Customers = COUNT('Databel - Data'[Customer ID])


&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;
&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;

Number of unique customers = DISTINCTCOUNT('Databel - Data'[Customer ID])


&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fxidxfmsam7fudlqqw8r5.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fxidxfmsam7fudlqqw8r5.png" alt="Comparison of unique customers and overall customers"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Both values are the same.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Calculating Churn&lt;/strong&gt;&lt;br&gt;
Before getting further into the analysis, there is a churn label column that indicates “Yes” (if customer has churned) or “No” (If customer has not churned.) Because working with this column is difficult, it is best to convert it to a binomial column (1/0) that indicates whether or not the client churned.&lt;/p&gt;

&lt;p&gt;&lt;em&gt;Creating a measure for the churned customers using a conditional IF expression based on the Churn Label&lt;/em&gt;&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;

Churned = IF('Databel - Data'[Churn Label]="Yes", 1, 0)


&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;&lt;em&gt;Creating a measure to calculate the churn rate&lt;/em&gt;&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;

Churn Rate = [Churned customers]/[Number of Customers]


&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;The total churn rate for “Databel” is *&lt;em&gt;26.86% *&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Investigating Churn reasons&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Next, I will investigate the different reasons why customers churned.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;The top three reasons are:&lt;/strong&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Competitors made better offers&lt;/li&gt;
&lt;li&gt;Competitors had better devices&lt;/li&gt;
&lt;li&gt;Attitude of support person&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F02ekftqgtsgziz0efg0a.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F02ekftqgtsgziz0efg0a.png" alt="Customer Churn Reasons"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Digging deeper into churn categories&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Churn Reasons are grouped together in the Churn Category column. The “Extra data charges”, “Price too high” and other price related reasons are grouped together in the “Price” category. I will be displaying all churn categories in one visualization.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fcmqch2vw7o9vf3gvlbc2.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fcmqch2vw7o9vf3gvlbc2.png" alt="Churned customers by category"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The largest proportion of churned customers churning is related to the competitor category. &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Using Maps&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Databel wants to know if the aggressive promotions launched by competitors in different states has had an impact on their customers. The task is to create a map that will allow me to look at the churn rate by state.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F55rqpm08f65ok3uy2aio.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F55rqpm08f65ok3uy2aio.png" alt="State Churn Rate"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Insights discovered so far&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;The Churn rate is for Databel is on average 27%&lt;/li&gt;
&lt;li&gt;45% of the reasons why customers churn is related to competitors&lt;/li&gt;
&lt;li&gt;The Churn rate in California is abnormally high&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The next stage is to analyze more columns, starting with the demographics of Databel.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Analyzing Demographics&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;The IF() method will be used to create a column with three age demography categories:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;“Senior,”&lt;/li&gt;
&lt;li&gt;“Under 30,”&lt;/li&gt;
&lt;li&gt;and “Other.”&lt;/li&gt;
&lt;/ul&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;

Demographics = IF('Databel - Data'[Under 30] = "Yes", "Under 30", IF('Databel - Data'[Senior] = "Yes", "Senior", "Other"))


&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fcl7mjch9cmvdhssb8z1j.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fcl7mjch9cmvdhssb8z1j.png" alt="Demographics Churn Rate"&gt;&lt;/a&gt;&lt;a href="https://dev.tourl"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The churn rate for senior citizens is higher than the average.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Analyzing Age groups&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;From the above visualization, the senior citizens churn more often. This suggests the need t have a more detailed look at the ages. Next, I will create combo chart visualizing the number of customers per bracket and their respective churn rates.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fctm0khv51y8set7v3pe0.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fctm0khv51y8set7v3pe0.png" alt="Churn rate by age"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;In general, the churn rate has an increasing trend through the age brackets. As the age increases the average churn rate for age brackets also increases.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Multiple field investigation&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;For this task, I will use the function SWITCH() which allows creation of a new column by assigning new results to the values in a column. We will group 3 different contract types into two for easy observation of yearly and monthly contracts. We will further analyze the churn rate based on gender.&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;

Contract Category = SWITCH('Databel - Data'[Contract Type], "One Year", "Yearly", "Two Year", "Yearly", "Monthly")


&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fa359ukcgxf3b793gbh2y.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fa359ukcgxf3b793gbh2y.png" alt="Churn Rate by Category and Gender"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Monthly contract customers churn more than yearly contract customers and the larger churning gender is females. &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Group Consumption and Unlimited Plan&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Databel has a hypothesis that people who are not on an unlimited data plan are more likely to churn. The task is to investigate this theory and prove if its accurate or not. I will also create a new column &lt;em&gt;Grouped Consumption&lt;/em&gt; that categorizes the average monthly GB download into the following groups to determine whether it’s related to the amount of mobile data (GB) used:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Less than 5 GB. &lt;/li&gt;
&lt;li&gt;Between 5 and 10 GB.&lt;/li&gt;
&lt;li&gt;10 or more GB. &lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fpe757kpd80pdcpv4ezlf.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fpe757kpd80pdcpv4ezlf.png" alt="Churn Rate by group consumption"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;It appears that the hypothesis is incorrect and instead,  customers who are on an unlimited plan are more likely to churn.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;International Calls and Contract Types&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;Databel has a request to analyze the international activity of customers and its relationship to churn. They would like to know  if paying for an international plan influences customer loyalty. This will also help us find out if customers without international plans are making international calls and vice versa. &lt;/p&gt;

&lt;p&gt;The findings were that customers who pay for an international plan but do not make international calls had a very high churn rate. The recommendation to Databel would be to contact customers who have an international plan but have not made any international calls and suggest that they downgrade their plan.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Contract Type&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F578eeqf6bmo27aqb0u47.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F578eeqf6bmo27aqb0u47.png" alt="Churn Rate by Account Length"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;It seems the churn rate decreases over time.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Summary Overview&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fs0vdok1pubx23z42toce.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fs0vdok1pubx23z42toce.png" alt="Databel Overview"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;The Churn rate is for Databel is on average 27%&lt;/li&gt;
&lt;li&gt;45% of the reasons why customers churn is related to competitors&lt;/li&gt;
&lt;li&gt;The Churn rate in California is abnormally high and this is due to campaigns launched by competitors inthe region&lt;/li&gt;
&lt;li&gt;There is a higher churn rate from senior citizens&lt;/li&gt;
&lt;li&gt;There is a higher churn rate from individual who have an international plan but have not made any international calls&lt;/li&gt;
&lt;li&gt;Customers with a monthly contract type have a higher churn rate &lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The next phase would be to identify reasons for the churn rates inthe different categories and recommend solutions for Databel. &lt;/p&gt;

&lt;p&gt;Thank you for reading&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Author:&lt;/strong&gt;&lt;br&gt;
&lt;em&gt;Gcinithemba Sherilyn Maphosa&lt;/em&gt;&lt;br&gt;
&lt;em&gt;Data Wired&lt;/em&gt;&lt;/p&gt;

</description>
      <category>powerbi</category>
      <category>datascience</category>
      <category>analytics</category>
      <category>analyst</category>
    </item>
  </channel>
</rss>
