为什么更改数据帧上列的类别会更改值?

时间:2019-06-27 17:15:14

标签: r

我想更改数据框列的类,以便可以关联值并创建图形。但是,当我使用下面的代码时,值会更改。 “深度”的原始类别是因素,我想将其更改为数字。 有人可以向我解释为什么会发生这种情况,以及是否有可能在没有问题的情况下更改班级吗?

原始数据框(Site.copy):

Plot     Depth
1         1.29
2         0.82
3         1.21
4         3.16
5         12.64

Site.copy $ Depth <-as.numeric(as.character(Site.copy $ Depth))

已更改Site.copy:

Plot     Depth
1         1.290000e+00
2         8.200000e+01
3         1.210000e+00
4         3.160000e+00
5         1.264000e+01

1 个答案:

答案 0 :(得分:0)

尝试-这与将因子转换为数字有关

as.numeric(as.character(Site.copy$Depth))

请参阅以下说明:Changing values when converting column type to numeric

在许多情况下,R默认为因素。您可以随时检查sapply( x , class)