【发布时间】:2016-10-12 21:52:55
【问题描述】:
summary() 总是以这种方式显示字符向量吗?我不记得是这种情况。
使用样本数据集
install.packages("mlbench")
library(mlbench)
检查内容并查看除一列“chas”之外的所有数字向量作为因子
#shortened for easier readability
BostonHousing <- BostonHousing[,c(1:4)]
str(BostonHousing)
#'data.frame': 506 obs. of 4 variables:
#$ crim : num 0.00632 0.02731 0.02729 0.03237 0.06905 ...
#$ zn : num 18 0 0 0 0 0 12.5 12.5 12.5 12.5 ...
#$ indus: num 2.31 7.07 7.07 2.18 2.18 2.18 7.87 7.87 7.87 7.87 ...
#$ chas : Factor w/ 2 levels "0","1": 1 1 1 1 1 1 1 1 1 1 ...
summary(BostonHousing)
#crim zn indus chas
#Min. : 0.00632 Min. : 0.00 Min. : 0.46 0:471
#1st Qu.: 0.08204 1st Qu.: 0.00 1st Qu.: 5.19 1: 35
#Median : 0.25651 Median : 0.00 Median : 9.69
#Mean : 3.61352 Mean : 11.36 Mean :11.14
#3rd Qu.: 3.67708 3rd Qu.: 12.50 3rd Qu.:18.10
#Max. :88.97620 Max. :100.00 Max. :27.74
将 'chas' 更改为字符向量。
BostonHousing$chas <- as.character(BostonHousing$chas)
现在,当我运行摘要时,“chas”列显示为 NULL。我想我记得看到下面显示的(字符)和尺寸的列名。
head(summary(BostonHousing))
crim zn indus chas
Min. : 0.00632 Min. : 0.00 Min. : 0.46 NULL:0
1st Qu.: 0.08204 1st Qu.: 0.00 1st Qu.: 5.19 NULL:0
Median : 0.25651 Median : 0.00 Median : 9.69 NULL:0
Mean : 3.61352 Mean : 11.36 Mean :11.14 NULL:0
3rd Qu.: 3.67708 3rd Qu.: 12.50 3rd Qu.:18.10 NULL:0
Max. :88.97620 Max. :100.00 Max. :27.74 NULL:0
【问题讨论】:
-
我无法复制您的结果。它对我来说很好,并为
chas列返回Length:506 Class: character Mode: character。此外,只需summary(BostonHousing)即可,或者summary(head(BostonHousing))- 不要将head()作为最外层函数。