summary()在R中提供所需的输出但不提供Rstudio

时间:2017-06-13 02:18:15

标签: r

当我在R本机控制台中键入summary函数时,它显示了我想要的输出,但是当我使用Rstudio时它不是。您可以在下面看到两者的输出。我使用相同的数据和相同的summary命令,为什么?

R本机控制台输出 -

Region                 
Midwest  : 30684       
NorthWest: 25939
South    : 41502
west   : 33177

State
California :11570
Texas .    : 7077
Newyork .   : 5595
others     : 94069

Rstudio输出 -

Region
Length:131302
Class  : character
Mode .  : Character

State
Length :131302
Class .: character
Mode .  : character

1 个答案:

答案 0 :(得分:1)

第一个摘要的输出是因子变量,而第二个摘要的输出是字符变量。

这是一个可重复的例子。这个data.frame有两个变量,其中一个是字符,另一个是因子。因子的标签对应于字符向量中的值。

set.seed(1234)
dat <- data.frame(charVec=sample(state.abb[1:5], 17, replace=TRUE), stringsAsFactors=FALSE)
dat$facVec <- factor(dat$charVec)

使用str

快速查看结构
str(dat)
'data.frame':   17 obs. of  2 variables:
 $ charVec: chr  "AL" "AR" "AR" "AR" ...
 $ facVec : Factor w/ 5 levels "AK","AL","AR",..: 2 3 3 3 5 3 2 1 3 4 ...

现在,在此data.frame

上运行summary
summary(dat)
   charVec          facVec
 Length:17          AK:4  
 Class :character   AL:2  
 Mode  :character   AR:6  
                    AZ:2  
                    CA:3

您很可能在GUI中使用stringsAsFactors=FALSEas.is=TRUE read.csv(或类似的读取函数),但在rstudio中没有。或者也许在rstudio中使用data.table&#39; s fread。使用str两个会话中的data.frame将确认这一点。