2014-12-31 2 views
2

Есть ли простой способ изменить формат вывода для сводной функции R, чтобы результаты печатались в столбце вместо строки? R делает это автоматически, когда вы передаете сводку фрейма данных. Я бы хотел напечатать итоговую статистику в столбце, когда передаю ему один вектор. Таким образом, вместо этого:Реструктуризация вывода сводной функции R

>summary(vector) 

Min. 1st Qu. Median Mean 3rd Qu. Max. 
1.000 1.000 2.000 6.699 6.000 559.000 

Это будет выглядеть примерно так:

>summary(vector) 

    Min. 1.000 
    1st Qu. 1.000 
    Median 2.000 
    Mean 6.699 
    3rd Qu. 6.000 
    Max. 559.000 

ответ

3

Sure. Относитесь к нему как data.frame:

set.seed(1) 
x <- sample(30, 100, TRUE) 

summary(x) 
# Min. 1st Qu. Median Mean 3rd Qu. Max. 
# 1.00 10.00 15.00 16.03 23.25 30.00 
summary(data.frame(x)) 
#  x   
# Min. : 1.00 
# 1st Qu.:10.00 
# Median :15.00 
# Mean :16.03 
# 3rd Qu.:23.25 
# Max. :30.00 

Для чуть более полезной продукции, вы можете использовать data.frame(unclass(.)):

data.frame(val = unclass(summary(x))) 
#   val 
# Min.  1.00 
# 1st Qu. 10.00 
# Median 15.00 
# Mean 16.03 
# 3rd Qu. 23.25 
# Max. 30.00 

Или вы можете использовать stack:

stack(summary(x)) 
# values  ind 
# 1 1.00 Min. 
# 2 10.00 1st Qu. 
# 3 15.00 Median 
# 4 16.03 Mean 
# 5 23.25 3rd Qu. 
# 6 30.00 Max. 
Смежные вопросы