
Data Structure
Networking
RDBMS
Operating System
Java
MS Excel
iOS
HTML
CSS
Android
Python
C Programming
C++
C#
MongoDB
MySQL
Javascript
PHP
- Selected Reading
- UPSC IAS Exams Notes
- Developer's Best Practices
- Questions and Answers
- Effective Resume Writing
- HR Interview Questions
- Computer Glossary
- Who is Who
Select Values Based on Percentile from R Data Frame Column
The percentiles divide a set of numeric values into hundred groups or individual values if the size of the values is 100. We can find percentiles for a numeric column of an R data frame, therefore, it is also possible to select values of a column based on these percentiles. For this purpose, we can use quantile function.
Example
Consider the below data frame −
set.seed(111) x<-sample(0:15,30,replace=TRUE) df<-data.frame(x) df
Output
x 1 13 2 10 3 3 4 2 5 14 6 8 7 10 8 4 9 2 10 11 11 7 12 9 13 0 14 12 15 12 16 9 17 3 18 14 19 7 20 13 21 9 22 8 23 7 24 10 25 15 26 0 27 10 28 6 29 4 30 14
Finding values that are less than or equal to a certain percentile for x in df −
df[df$x<quantile(df$x,0.75),]
[1] 10 3 2 8 10 4 2 11 7 9 0 9 3 7 9 8 7 10 0 10 6 4
df[df$x<quantile(df$x,0.25),]
[1] 3 2 4 2 0 3 0 4
df[df$x<quantile(df$x,0.50),]
[1] 3 2 8 4 2 7 0 3 7 8 7 0 6 4
df[df$x<quantile(df$x,0.90),]
[1] 13 10 3 2 8 10 4 2 11 7 9 0 12 12 9 3 7 13 9 8 7 10 0 10 6 [26] 4
df[df$x<quantile(df$x,0.95),]
[1] 13 10 3 2 8 10 4 2 11 7 9 0 12 12 9 3 7 13 9 8 7 10 0 10 6 [26] 4
df[df$x<quantile(df$x,0.99),]
[1] 13 10 3 2 14 8 10 4 2 11 7 9 0 12 12 9 3 14 7 13 9 8 7 10 0 [26] 10 6 4 14
df[df$x<quantile(df$x,0.10),]
[1] 0 0
df[df$x<quantile(df$x,0.05),]
[1] 0 0
df[df$x<quantile(df$x,0.20),]
[1] 3 2 2 0 3 0
df[df$x<quantile(df$x,0.30),]
[1] 3 2 4 2 0 3 0 6 4
df[df$x>quantile(df$x,0.05),]
[1] 13 10 3 2 14 8 10 4 2 11 7 9 12 12 9 3 14 7 13 9 8 7 10 15 10 [26] 6 4 14
df[df$x>quantile(df$x,0.10),]
[1] 13 10 3 14 8 10 4 11 7 9 12 12 9 3 14 7 13 9 8 7 10 15 10 6 4 [26] 14
df[df$x>quantile(df$x,0.20),]
[1] 13 10 14 8 10 4 11 7 9 12 12 9 14 7 13 9 8 7 10 15 10 6 4 14
df[df$x>quantile(df$x,0.25),]
[1] 13 10 14 8 10 11 7 9 12 12 9 14 7 13 9 8 7 10 15 10 6 14
df[df$x>quantile(df$x,0.60),]
[1] 13 14 11 12 12 14 13 15 14
df[df$x>quantile(df$x,0.70),]
[1] 13 14 11 12 12 14 13 15 14
df[df$x>quantile(df$x,0.75),]
[1] 13 14 12 12 14 13 15 14
df[df$x>quantile(df$x,0.80),]
[1] 13 14 14 13 15 14
df[df$x>quantile(df$x,0.90),]
[1] 15
df[df$x>quantile(df$x,0.95),]
[1] 15