R Tutorial: Counts vs. proportions
Skills:
Data Literacy80%
Key Takeaways
The video tutorial demonstrates how to compute proportions and conditional proportions in R using the prop.table function and visualize the results using bar charts with the ggplot function, specifically using the position = 'fill' option to display proportions.
Full Transcript
you may have noticed in the last exercises that sometimes raw accounts of cases can be useful but often it's the proportions that are more interesting we can do our best to compute those proportions in our head or we could do it explicitly let's return to our table of counts of cases by identity and alignment if we wanted to instead get a sense of the proportion of all cases that fell into each category we can take the original table of counts saved as tab underscore CNT and provided as input to the prop table function we see here that the single largest category is characters that are bad and secret at about 29 percent of characters also note that because these are all proportions out of the whole data set the sum of all these proportions is 1 if we're curious about the systematic associations between variables we should look to conditional proportions an example of a conditional proportion is the proportion of public identity characters that are good to build a table of these conditional proportions add a 1 as the second argument specifying that you'd like to condition on the rows we see here that around 57% of all secret characters are bad because we're conditioning on identity it's every road that now sums to 1 to condition on the columns instead you can change that argument to 2 now it's the columns that sum to 1 and we learn for example that the proportion of bad characters that are secret is around 63% as the number of cells in these tables gets large it becomes much easier to make sense of your data using graphics the bar chart is still a good choice but we're going to need to add some options here's the code for the bar chart based on comps we want to condition on whatever's on the x-axis and then stretch those bars to each add up to a total proportion of 1 so we add the position equals fill option to the Giambi our function let's add one additional layer it changed to our y-axis to indicate that we're looking at proportions when we run this code at the console we get a plot that reflects our table of proportions after we had conditioned on ID while the proportion of secret characters that are bad is still large it actually it's actually less than the proportion of bad care ders and those that are listed as unknown we get a very different picture if we condition instead on alignment the only change needed in the code is to swap the positions of the names of the variables this results in a plot where we've conditioned on alignment and we learned that within characters that are bad the greatest proportion of those are indeed secret this might seem paradoxical but it's just a result of having different numbers of cases in each level okay now you try experimenting with conditional proportions
Original Description
Want to learn more? Take the full course at https://learn.datacamp.com/courses/exploratory-data-analysis at your own pace. More than a video, you'll learn hands-on coding & quickly apply skills to your daily work.
---
You may have noticed in the last exercises that sometimes raw counts of cases can be useful, but often it's the proportions that are more interesting. We can do our best to compute these proportions in our head or we could do it explicitly.
Let's return to our table of counts of cases by identity and alignment. If we wanted to instead get a sense of the proportion of all cases that fell into each category, we can take the original table of counts, saved as tab underscore cnt, and provide it as input to the prop dot table function. We see here that the single largest category are characters that are bad and secret at about 29% of characters. Also note that because these are all proportions out of the whole dataset, the sum of all of these proportions is 1.
If we're curious about systematic associations between variables, we should look to conditional proportions. An example of a conditional proportion is the proportion of public identity characters that are good. To build a table of these conditional proportions, add a 1 as the second argument, specifying that you'd like to condition on the rows. We see here that around 57% of all secret characters are bad. Because we're conditioning on identity, it's every row that now sums to one.
To condition on the columns instead, change that argument to 2. Now it's the columns that sum to one and we learn, for example, that the proportion of bad characters that are secret is around 63%.
As the number of cells in these tables gets large, it becomes much easier to make sense of your data using graphics. The bar chart is still a good choice, but we're going to need to add some options. Here is the code for the bar chart based on counts. We want to condition on whatever is on the x axis and stretch those bars to
Watch on YouTube ↗
(saves to browser)
Sign in to unlock AI tutor explanation · ⚡30
Playlist
Uploads from DataCamp · DataCamp · 0 of 60
← Previous
Next →
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
SQL Server Tutorial: Date manipulation
DataCamp
R Tutorial: Intermediate Interactive Data Visualization with plotly in R
DataCamp
R Tutorial: Adding aesthetics to represent a variable
DataCamp
R Tutorial: Moving Beyond Simple Interactivity
DataCamp
Python Tutorial: Why use ML for marketing? Strategies and use cases
DataCamp
Python Tutorial: Preparation for modeling
DataCamp
Python Tutorial: Machine Learning modeling steps
DataCamp
R Tutorial: The prior model
DataCamp
R Tutorial: Data & the likelihood
DataCamp
R Tutorial: The posterior model
DataCamp
R Tutorial: An Introduction to plotly
DataCamp
R Tutorial: Plotting a single variable
DataCamp
R Tutorial: Bivariate graphics
DataCamp
Python Tutorial: Customer Segmentation in Python
DataCamp
Python Tutorial: Time cohorts
DataCamp
Python Tutorial: Calculate cohort metrics
DataCamp
Python Tutorial: Cohort analysis visualization
DataCamp
R Tutorial: Building Dashboards with flexdashboard
DataCamp
R Tutorial: Anatomy of a flexdashboard
DataCamp
R Tutorial: Layout basics
DataCamp
R Tutorial: Advanced layouts
DataCamp
Python Tutorial: Time Series Analysis in Python
DataCamp
Python Tutorial: Correlation of Two Time Series
DataCamp
Python Tutorial: Simple Linear Regressions
DataCamp
Python Tutorial: Autocorrelation
DataCamp
R Tutorial: The gapminder dataset
DataCamp
R Tutorial: The filter verb
DataCamp
R Tutorial: The arrange verb
DataCamp
R Tutorial: The mutate verb
DataCamp
R Tutorial: What is cluster analysis?
DataCamp
R Tutorial: Distance between two observations
DataCamp
R Tutorial: The importance of scale
DataCamp
R Tutorial: Measuring distance for categorical data
DataCamp
Python Tutorial: Plotting multiple graphs
DataCamp
Python Tutorial: Customizing axes
DataCamp
Python Tutorial: Legends, annotations, & styles
DataCamp
Python Tutorial: Introduction to iterators
DataCamp
Python Tutorial: Playing with iterators
DataCamp
Python Tutorial: Using iterators to load large files into memory
DataCamp
SQL Tutorial: Introduction to Relational Databases in SQL
DataCamp
SQL Tutorial: Tables: At the core of every database
DataCamp
SQL Tutorial: Update your database as the structure changes
DataCamp
Python Tutorial: Classification-Tree Learning
DataCamp
Python Tutorial: Decision-Tree for Classification
DataCamp
Python Tutorial: Decision-Tree for Regression
DataCamp
Python Tutorial: Census Subject Tables
DataCamp
Python Tutorial: Census Geography
DataCamp
Python Tutorial: Using the Census API
DataCamp
R Tutorial: A/B Testing in R
DataCamp
R Tutorial: Baseline Conversion Rates
DataCamp
R Tutorial: Designing an Experiment - Power Analysis
DataCamp
R Tutorial: Introduction to qualitative data
DataCamp
R Tutorial: Understanding your qualitative variables
DataCamp
R Tutorial: Making Better Plots
DataCamp
SQL Tutorial: OLTP and OLAP
DataCamp
SQL Tutorial: Storing data
DataCamp
SQL Tutorial: Database design
DataCamp
Python Tutorial: Introduction to spaCy
DataCamp
Python Tutorial: Statistical Models
DataCamp
Python Tutorial: Rule-based Matching
DataCamp
More on: Data Literacy
View skill →Related Reads
📰
📰
📰
📰
How can I batch-generate 3D assets from prompts or images using an API, and which 3D generation APIs support batch generation?
Reddit r/artificial
How AI Head Swap Works: The Technology Behind Realistic AI Image Replacement
Dev.to AI
How I Built an AI Pet Portrait Generator That Turns Photos Into Art
Dev.to · William Li
I Put Google’s Squoosh Codecs in the Browser — and Cut My Image Bill Before the Upload Even…
Medium · Programming
🎓
Tutor Explanation
DeepCamp AI