首页 > 解决方案 > 根据字符选择观察

问题描述

我的数据集中有一列,当它应该是字符时,R 将其解释为数字。原始数据是这样的: 1, 1.2, 2, 3, 4, 5, 5.2 这对于使用其他数据集非常重要,R 不会添加额外的 0,但是当我导入我的 csv 文件时,该列看起来像这样:1.0、1.2、2.0、3.0、4.0、5.0、5.2

如何删除多余的 0?我在想这样的事情可能会奏效:

column <- c(1.0, 1.2, 2.0, 3.0, 4.0, 5.0, 5.2)
column <- if_else(column *contains* 0.2, column, round(column, 0)

但我不确定使用什么函数包含(这用于根据标题选择列)。帮助!

标签: rdplyr

解决方案


您可以将其更改为您提到的字符,理想情况下它应该是一个。

> column <- c(1.0, 1.2, 2.0, 3.0, 4.0, 5.0, 5.2)
> class(column)
[1] "numeric"
> column <- as.character(column)
> class(column)
[1] "character"
> column
[1] "1"   "1.2" "2"   "3"   "4"   "5"   "5.2"
> 

推荐阅读