summary()函数无法正确打印

时间:2016-11-13 15:36:07

标签: r summary

这可能是一个非常蹩脚的问题,但我无法弄清楚会发生什么。通常,如果我调用此函数:

summary(VLTcog$per ~ VLTcog$Cognate)

我得到的输出是:

VLTcog $每N = 90

+ -------------- + - + - + ---------- +
| | | N | VLTcog $ per |
+ -------------- + - + - + ---------- +
| VLTcog $同源| C | 48 | 74.42708 |
| | NC | 42 | 56.42857 |
+ -------------- + - + - + ---------- +
|整体| | 90 | 66.02778 |
+ -------------- + - + - + ---------- +

现在,如果我这样做,它给我的唯一输出是:
  长度等级模式
      3公式调用
我的数据 STR(VLTcog)
'data.frame':90 obs。 4个变量:
 $项目:因子w / 90级别“1 acquiesce”,..:86 16 30 62 28 53 26 83 51 65 ...
 $同源:因子w / 2级别“C”,“NC”:1 1 1 1 2 1 2 2 1 2 ...
 $频率:因子w / 5级“1”,“2”,“3”,“4”,..:1 1 1 1 1 1 1 1 1 1 ...
 $ per:num 100 67.5 95 82.5 87.5 67.5 95 40 87.5 87.5 ...

1 个答案:

答案 0 :(得分:2)

您的summary行为似乎来自Hmisc::summary.formula(我使用library(sos); findFn("summary.formula")来解决这个问题......)

在干净的R会话中:

x <- 1:10
y <- 1:10
summary(y~x)
## Length   Class    Mode 
##   3 formula    call 

现在加载Hmisc

library(Hmisc)
packageVersion("Hmisc")
## [1] ‘4.0.0’
summary(y~x)
## y     N= 10 
## 
## +-------+------+--+---+
## |       |      |N |y  |
## +-------+------+--+---+
## |x      |[1, 4)| 3|2.0|
## |       |[4, 6)| 2|4.5|
## |       |[6, 9)| 3|7.0|
## |       |[9,10]| 2|9.5|
## +-------+------+--+---+
## |Overall|      |10|5.5|
## +-------+------+--+---+

因此,如果您在仅加载 Hmisc的会话中尝试此操作,我建议您了解情况如何,然后尝试其他程序包以查看其中一个是否屏蔽了{{1方法......