【问题标题】:summary table , R汇总表
【发布时间】:2018-07-28 08:42:15
【问题描述】:

我将一个 xlsx 文件导入 R,该表有很多列,其中一些包含数字和其他字符。 当我尝试对包含字符的列进行摘要时,我得到了这个

> Length     Class      Mode  
>       287 character character

假设我的专栏是这样的:

yes
no
no
yes

我想要这个:

yes:2
no: 2

我尝试将表格另存为数据框,但不起作用,我也尝试将其另存为表格,但出现“表格无法强制”。

有什么想法吗?谢谢你:)

【问题讨论】:

  • ?table。如需更多帮助,请提供您的数据样本。
  • 如果你想要这个结果,你需要将你的字符列设置为一个因素。检查summary(iris) 并查看 Species 列
  • 是的,没错,我的表与 iris 非常相似(但更大:150 列,其中 7 列包含数字,其他的答案是 yes/no 和 male/female 和 380 row) ,我希望能够得到相同的结果,但我不知道如何
  • 如何导入 xlsx 文件?可能有一个选项可以获取因子列而不是字符列。

标签: r summary rscript


【解决方案1】:

如果您想要summary 这样的输出,您必须将字符列转换为因子

考虑一个带有字符列的数据框:

iris2 <- iris
iris2$Species <- as.character(iris2$Species)

然后你得到这个不需要的输出:

> summary(iris2)
  Sepal.Length   Sepal.Width    Petal.Length   Petal.Width    Species         
 Min.   :4.30   Min.   :2.00   Min.   :1.00   Min.   :0.1   Length:150        
 1st Qu.:5.10   1st Qu.:2.80   1st Qu.:1.60   1st Qu.:0.3   Class :character  
 Median :5.80   Median :3.00   Median :4.35   Median :1.3   Mode  :character  
 Mean   :5.84   Mean   :3.06   Mean   :3.76   Mean   :1.2                     
 3rd Qu.:6.40   3rd Qu.:3.30   3rd Qu.:5.10   3rd Qu.:1.8                     
 Max.   :7.90   Max.   :4.40   Max.   :6.90   Max.   :2.5 

要将所有字符列转换为因子,purrr 包的map_if 函数很方便:

library(purrr)
iris3 <- as.data.frame(map_if(iris2, is.character, as.factor))

然后:

> summary(iris3)
  Sepal.Length   Sepal.Width    Petal.Length   Petal.Width        Species  
 Min.   :4.30   Min.   :2.00   Min.   :1.00   Min.   :0.1   setosa    :50  
 1st Qu.:5.10   1st Qu.:2.80   1st Qu.:1.60   1st Qu.:0.3   versicolor:50  
 Median :5.80   Median :3.00   Median :4.35   Median :1.3   virginica :50  
 Mean   :5.84   Mean   :3.06   Mean   :3.76   Mean   :1.2                  
 3rd Qu.:6.40   3rd Qu.:3.30   3rd Qu.:5.10   3rd Qu.:1.8                  
 Max.   :7.90   Max.   :4.40   Max.   :6.90   Max.   :2.5 

【讨论】:

  • 感谢您的帮助,但我刚试了一下,我得到了这个:> summary(medata3[,4]) 是的 1 即使列处理了性别(男/女)
猜你喜欢
  • 1970-01-01
  • 2018-05-07
  • 1970-01-01
  • 2019-06-01
  • 1970-01-01
  • 2019-11-23
  • 2018-02-09
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多