library(dplyr)
## Warning: package 'dplyr' was built under R version 4.1.3
##
## 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
boxplot(mtcars$disp~factor(mtcars$gear),
xlab = "gear", ylab = "disp")

mtcars_aov <- aov(mtcars$disp~factor(mtcars$gear))
summary(mtcars_aov)
## Df Sum Sq Mean Sq F value Pr(>F)
## factor(mtcars$gear) 2 280221 140110 20.73 2.56e-06 ***
## Residuals 29 195964 6757
## ---
## Signif. codes: 0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1
attributes(mtcars_aov)
## $names
## [1] "coefficients" "residuals" "effects" "rank"
## [5] "fitted.values" "assign" "qr" "df.residual"
## [9] "contrasts" "xlevels" "call" "terms"
## [13] "model"
##
## $class
## [1] "aov" "lm"
mtcars_aov$coefficients
## (Intercept) factor(mtcars$gear)4 factor(mtcars$gear)5
## 326.3000 -203.2833 -123.8200
TukeyHSD(mtcars_aov)
## Tukey multiple comparisons of means
## 95% family-wise confidence level
##
## Fit: aov(formula = mtcars$disp ~ factor(mtcars$gear))
##
## $`factor(mtcars$gear)`
## diff lwr upr p adj
## 4-3 -203.28333 -281.9100 -124.65666 0.0000016
## 5-3 -123.82000 -228.6556 -18.98443 0.0180037
## 5-4 79.46333 -28.5987 187.52536 0.1821800
plot(TukeyHSD(mtcars_aov))

plot(TukeyHSD(mtcars_aov), las=1)

kruskal.test(mtcars$disp~factor(mtcars$gear))
##
## Kruskal-Wallis rank sum test
##
## data: mtcars$disp by factor(mtcars$gear)
## Kruskal-Wallis chi-squared = 16.578, df = 2, p-value = 0.0002513