R 中的奇怪(?)排序,最小值从 10.0 开始
Strange(?) ordering in R, min value starts from 10.0
我 运行 在我看来是非常 st运行ge 的行为。我什至不确定我应该提供哪些代码细节,因为这看起来很奇怪,但这就是问题所在。我有一个数据框,我根据给定的列值
进行排序
这是数据的排序方式
ordered <- data[order(data[,column]),]
变量列作为参数传递。这一切看起来都很简单,但我下面的输出显示为 st运行ge 排序。
ordered[,column]
[1] "10.0" "10.0" "10.0" "10.0" "10.1" "10.1" "10.1" "10.1"
...
[257] "8.9" "8.9" "9.0" "9.0" "9.0" "9.1" "9.2" "9.2"
[265] "9.2" "9.2" "9.3" "9.3" "9.3" "9.4" "9.5" "9.6"
...
如您所见,数据是有序的,但不是从最小值到最大值,而是从 10.0 开始,直到最大值,然后再次从最小值开始。
我完全不知道这是什么。有任何想法吗?什么会导致类似的行为?
让您失望的问题是您使用的是字符,而不是数字。
要自行检查,您可以使用以下方法:
class(ordered[,column])
我 运行 在我看来是非常 st运行ge 的行为。我什至不确定我应该提供哪些代码细节,因为这看起来很奇怪,但这就是问题所在。我有一个数据框,我根据给定的列值
进行排序这是数据的排序方式
ordered <- data[order(data[,column]),]
变量列作为参数传递。这一切看起来都很简单,但我下面的输出显示为 st运行ge 排序。
ordered[,column]
[1] "10.0" "10.0" "10.0" "10.0" "10.1" "10.1" "10.1" "10.1"
...
[257] "8.9" "8.9" "9.0" "9.0" "9.0" "9.1" "9.2" "9.2"
[265] "9.2" "9.2" "9.3" "9.3" "9.3" "9.4" "9.5" "9.6"
...
如您所见,数据是有序的,但不是从最小值到最大值,而是从 10.0 开始,直到最大值,然后再次从最小值开始。
我完全不知道这是什么。有任何想法吗?什么会导致类似的行为?
让您失望的问题是您使用的是字符,而不是数字。
要自行检查,您可以使用以下方法:
class(ordered[,column])