Как построить категориальные данные в r (с примерами)
В статистике категориальные данные представляют собой данные, которые могут иметь имена или метки.
Примеры включают в себя:
- Статус курения («курящий», «некурящий»)
- Цвет глаз («голубой», «зеленый», «карий»)
- Уровень образования (например, «средняя школа», «степень бакалавра», «степень магистра»)
Три наиболее часто используемые диаграммы для визуализации данных этого типа включают в себя:
- Гистограмма
- Мозаичные сюжеты
- Ящичные диаграммы по группам
В следующих примерах показано, как создать каждый из этих графиков в R.
Пример 1: Гистограммы
Следующий код показывает, как создать гистограмму для визуализации частоты сдвигов в определенном фрейме данных:
library (ggplot2) #create data frame df <- data. frame (result = c('W', 'L', 'W', 'W', 'W', 'L', 'W', 'L', 'W', 'L'), team = c('B', 'B', 'B', 'B', 'D', 'A', 'A', 'A', 'C', 'C'), points = c(12, 28, 19, 22, 32, 45, 22, 28, 13, 19), rebounds = c(5, 7, 7, 12, 11, 4, 10, 7, 8, 8)) #create bar chart of teams ggplot(df, aes (x=team)) + geom_bar()
По оси X показано название каждой команды, а по оси Y показана частота появления каждой команды в кадре данных.
Мы также можем использовать следующий код, чтобы упорядочить столбцы на графике от большего к меньшему:
#create bar chart of teams, ordered from large to small ggplot(df, aes (x= reorder (team, team, function (x)- length (x)))) + geom_bar(fill=' steelblue ') + labs(x=' Team ')
Пример 2: Ящичные диаграммы по группам
Кластерные коробчатые диаграммы — это полезный способ визуализации числовой переменной, сгруппированной по категориальной переменной.
Например, следующий код показывает, как создать коробчатые диаграммы, показывающие распределение набранных очков, сгруппированных по командам:
library (ggplot2) #create data frame df <- data. frame (result = c('W', 'L', 'W', 'W', 'W', 'L', 'W', 'L', 'W', 'L'), team = c('B', 'B', 'B', 'B', 'D', 'A', 'A', 'A', 'C', 'C'), points = c(12, 28, 19, 22, 32, 45, 22, 28, 13, 19), rebounds = c(5, 7, 7, 12, 11, 4, 10, 7, 8, 8)) #create boxplots of points, grouped by team ggplot(df, aes (x=team, y=points)) + geom_boxplot(fill=' steelblue ')
По оси X отображаются команды, а по оси Y — распределение очков, набранных каждой командой.
Пример 3: мозаичный сюжет
Плиточный график — это тип графика, который отображает частоты двух разных категориальных переменных на одном графике.
Например, следующий код показывает, как создать мозаичный график, показывающий частоту категориальных переменных «результат» и «команда» на одном графике:
#create data frame df <- data. frame (result = c('W', 'L', 'W', 'W', 'W', 'L', 'W', 'L', 'W', 'L'), team = c('B', 'B', 'B', 'B', 'D', 'A', 'A', 'A', 'C', 'C'), points = c(12, 28, 19, 22, 32, 45, 22, 28, 13, 19), rebounds = c(5, 7, 7, 12, 11, 4, 10, 7, 8, 8)) #create table of counts counts <- table(df$result, df$team) #create mosaic plot mosaicplot(counts, xlab=' Game Result ', ylab=' Team ', main=' Wins by Team ', col=' steelblue ')
По оси X отображается результат игры, а по оси Y — четыре разные команды.
Дополнительные ресурсы
В следующих руководствах объясняется, как создавать другие распространенные графики в R:
Как создать сложную гистограмму в R
Как создать кластеризованную гистограмму в R
Как создать график с накоплением точек в R