data("PlantGrowth")
str(PlantGrowth)
## 'data.frame': 30 obs. of 2 variables:
## $ weight: num 4.17 5.58 5.18 6.11 4.5 4.61 5.17 4.53 5.33 5.14 ...
## $ group : Factor w/ 3 levels "ctrl","trt1",..: 1 1 1 1 1 1 1 1 1 1 ...
head(PlantGrowth)
## weight group
## 1 4.17 ctrl
## 2 5.58 ctrl
## 3 5.18 ctrl
## 4 6.11 ctrl
## 5 4.50 ctrl
## 6 4.61 ctrl
options(repos = c(CRAN = "https://cloud.r-project.org"))
install.packages("dplyr")
##
## The downloaded binary packages are in
## /var/folders/4f/3vyg_79j1b393c9jcqgz4f7c0000gn/T//Rtmpldb3MR/downloaded_packages
library(dplyr)
##
## Attaching package: 'dplyr'
## The following objects are masked from 'package:stats':
##
## filter, lag
## The following objects are masked from 'package:base':
##
## intersect, setdiff, setequal, union
PlantGrowth %>%
group_by(group) %>%
summarise(avg_weight = mean(weight), .groups = "drop")
## # A tibble: 3 × 2
## group avg_weight
## <fct> <dbl>
## 1 ctrl 5.03
## 2 trt1 4.66
## 3 trt2 5.53
PlantGrowth %>%
arrange(desc(weight))
## weight group
## 1 6.31 trt2
## 2 6.15 trt2
## 3 6.11 ctrl
## 4 6.03 trt1
## 5 5.87 trt1
## 6 5.80 trt2
## 7 5.58 ctrl
## 8 5.54 trt2
## 9 5.50 trt2
## 10 5.37 trt2
## 11 5.33 ctrl
## 12 5.29 trt2
## 13 5.26 trt2
## 14 5.18 ctrl
## 15 5.17 ctrl
## 16 5.14 ctrl
## 17 5.12 trt2
## 18 4.92 trt2
## 19 4.89 trt1
## 20 4.81 trt1
## 21 4.69 trt1
## 22 4.61 ctrl
## 23 4.53 ctrl
## 24 4.50 ctrl
## 25 4.41 trt1
## 26 4.32 trt1
## 27 4.17 ctrl
## 28 4.17 trt1
## 29 3.83 trt1
## 30 3.59 trt1
PlantGrowth %>%
filter(weight > 5)
## weight group
## 1 5.58 ctrl
## 2 5.18 ctrl
## 3 6.11 ctrl
## 4 5.17 ctrl
## 5 5.33 ctrl
## 6 5.14 ctrl
## 7 5.87 trt1
## 8 6.03 trt1
## 9 6.31 trt2
## 10 5.12 trt2
## 11 5.54 trt2
## 12 5.50 trt2
## 13 5.37 trt2
## 14 5.29 trt2
## 15 6.15 trt2
## 16 5.80 trt2
## 17 5.26 trt2
PlantGrowth %>%
mutate(weight_category = ifelse(weight > mean(weight), "Above Average", "Below Average"))
## weight group weight_category
## 1 4.17 ctrl Below Average
## 2 5.58 ctrl Above Average
## 3 5.18 ctrl Above Average
## 4 6.11 ctrl Above Average
## 5 4.50 ctrl Below Average
## 6 4.61 ctrl Below Average
## 7 5.17 ctrl Above Average
## 8 4.53 ctrl Below Average
## 9 5.33 ctrl Above Average
## 10 5.14 ctrl Above Average
## 11 4.81 trt1 Below Average
## 12 4.17 trt1 Below Average
## 13 4.41 trt1 Below Average
## 14 3.59 trt1 Below Average
## 15 5.87 trt1 Above Average
## 16 3.83 trt1 Below Average
## 17 6.03 trt1 Above Average
## 18 4.89 trt1 Below Average
## 19 4.32 trt1 Below Average
## 20 4.69 trt1 Below Average
## 21 6.31 trt2 Above Average
## 22 5.12 trt2 Above Average
## 23 5.54 trt2 Above Average
## 24 5.50 trt2 Above Average
## 25 5.37 trt2 Above Average
## 26 5.29 trt2 Above Average
## 27 4.92 trt2 Below Average
## 28 6.15 trt2 Above Average
## 29 5.80 trt2 Above Average
## 30 5.26 trt2 Above Average
PlantGrowth %>%
select(weight)
## weight
## 1 4.17
## 2 5.58
## 3 5.18
## 4 6.11
## 5 4.50
## 6 4.61
## 7 5.17
## 8 4.53
## 9 5.33
## 10 5.14
## 11 4.81
## 12 4.17
## 13 4.41
## 14 3.59
## 15 5.87
## 16 3.83
## 17 6.03
## 18 4.89
## 19 4.32
## 20 4.69
## 21 6.31
## 22 5.12
## 23 5.54
## 24 5.50
## 25 5.37
## 26 5.29
## 27 4.92
## 28 6.15
## 29 5.80
## 30 5.26
PlantGrowth %>%
filter(weight > 5) %>%
arrange(group)
## weight group
## 1 5.58 ctrl
## 2 5.18 ctrl
## 3 6.11 ctrl
## 4 5.17 ctrl
## 5 5.33 ctrl
## 6 5.14 ctrl
## 7 5.87 trt1
## 8 6.03 trt1
## 9 6.31 trt2
## 10 5.12 trt2
## 11 5.54 trt2
## 12 5.50 trt2
## 13 5.37 trt2
## 14 5.29 trt2
## 15 6.15 trt2
## 16 5.80 trt2
## 17 5.26 trt2