Я часто нахожу, что вычисляю сводную статистику в R, используя dplyr, затем записывая результат в csv и загружая его в Tableau для создания таблицы, потому что таблицы Tableo настолько просты и легки. Я бы скорее сгенерировал таблицы непосредственно в R.Табличная таблица сгруппирована в R для уценки
Есть ли простое решение для сгруппированных таблиц в R?
Это очень легко генерировать данные, которые я хотел бы:
library(tidyr)
library(dplyr)
summary_table <- iris %>%
gather(measure, value, -Species) %>%
separate(measure, into=c("attribute", "dimension")) %>%
group_by(Species, attribute, dimension) %>%
summarise(mean=mean(value))
summary_table
Source: local data frame [12 x 4]
Groups: Species, attribute [?]
Species attribute dimension mean
<fctr> <chr> <chr> <dbl>
1 setosa Petal Length 1.462
2 setosa Petal Width 0.246
3 setosa Sepal Length 5.006
4 setosa Sepal Width 3.428
5 versicolor Petal Length 4.260
6 versicolor Petal Width 1.326
7 versicolor Sepal Length 5.936
8 versicolor Sepal Width 2.770
9 virginica Petal Length 5.552
10 virginica Petal Width 2.026
11 virginica Sepal Length 6.588
12 virginica Sepal Width 2.974
Теперь я хотел бы представить это как:
Я хотел бы попробовать несколько различных способы организации, поэтому я хотел бы иметь возможность легко группировать строки, а не столбцы
Основные особенности сгруппированные строки версии являются:
- Группировка переменная находится на левой стороне, в отдельной колонке, а не в отдельной строке, в клетке, которая охватывает все строки
- Горизонтальные клеток границы на уровне группы
Я новичок в rmarkdown, но конечной целью является его получение в html-документе.
Возможно ли это?
Вы могли бы рассмотреть делать агрегирование по своему усмотрению, а также. Я попробовал 'aggregate (x = iris [, colnames (iris)] [colnames (iris)! =" Species "]], by = list (iris $ Speces), FUN = function (y) {ifelse (is.numeric (y), mean (y), NA)} ) 'для начала. – nilsole