我的data.frame是stateData
,当我执行stateData[order(stateData$"heart failure"),]
时heart failure
是一个列名,我的数据帧回到heart failure
列的10.0, 10.1, 10.3, 10.7, 15.0, 15.1, 15.9, 8.1, 8.3, 8.9, 9.0, 9.1
增加这样的值:
dput(head(stateData))
heart failure = structure(c(97L, 44L, 25L, 6L, 52L, 57L ), .Label = c("10.0", "7.2", "7.3", "7.4", "7.5", "7.6", "7.7", "7.8", "7.9", "8.0", "8.1", "8.2", "8.3", "8.4", "8.5", "8.6", "8.7", "8.8", "8.9", "9.0", "9.1", "9.2", "9.3", "9.4", "9.5", "9.6", "9.7", "9.8", "9.9", "Not Available"), class = "factor"),
以下是详细信息:
stateData[,"heart failure"] <- as.numeric(levels(stateData["heart failure"])[stateData[,"heart failure"]])
sortedData <- stateData[order(stateData[,"heart failure"]),]
为什么不一直排序呢?
任何帮助表示赞赏!谢谢!
编辑:这是我的解决方案!我明白了,谢谢你的所有建议!
{{1}}
答案 0 :(得分:0)
列stateData $&#34;心力衰竭&#34;是一个因素,所以当R对它进行排序时,它会按字母顺序排列。如果您希望数据按数字排序,请尝试以下方法:
stateData$"heart failure" <- as.numeric(levels(stateData$"heart failure"))[stateData$"heart failure"]
stateData[order(stateData$"heart failure"),]