排序十进制数据无法正常工作

时间:2016-07-24 13:02:34

标签: r

我的数据框Rating有两列HospitalNameDeathRate_For_Hospital。它看起来像

    HospitalName    DeathRate_For_Hospital
    MGM Hospital                       9.8                    
    HNK Hospital                      10.1
Hopkins Hospital                       8.3
    Arr Medicals                      10.0
           .                            .
           .                            .

我所需要的只是获得最少DeathRate_For_Hospital的医院名称,所以我订购了DeathRate_for_Hospital,如:

Rating <- Rating[order(round(as.numeric( Rating$ DeathRate_For_Hospital))),]
head(Rating,1)

虽然我转换为升序,但我不知道它为什么会起作用。

如果我只有数字值,这是有效的。但如果他们的浮动值排序不起作用。

由于

1 个答案:

答案 0 :(得分:2)

  

我所需要的只是获得最少DeathRate_For_Hospital

的医院名称

如果with(Rating, class(DeathRate_For_Hospital))是&#34;数字&#34;,则只需:

with(Rating, HospitalName[order(DeathRate_For_Hospital)])[1]

但是因为它给你&#34;因素&#34;,你需要:

with(Rating, HospitalName[order(as.numeric(as.character(DeathRate_For_Hospital)))])[1]

或更有效率:

numbers <- as.numeric(levels(DeathRate_For_Hospital))
with(Rating, HospitalName[order(numbers[DeathRate_For_Hospital])])[1]