如何通过删除名称开头的数字按字母顺序对数据进行排序

蒂姆·苹果23

我试图按字母顺序对这些状态名称进行排序,同时保留状态名称左侧的数字。我目前无法弄清楚该如何做。

我尝试使用各种形式gsub的尝试删除数字,然后再排序没有任何成功。

这是具有以下状态的数据集:

print(StateRankings)

# [1] "1. Arizona"         "10. Missouri"       "11. Tennessee"      "12. Florida"       
# [5] "13. West Virginia"  "14. Kentucky"       "15. New Hampshire"  "16. Mississippi"   
# [9] "17. Wyoming"        "18. Alabama"        "19. Idaho"           "2. Alaska"         
#[13] "20. Vermont"        "21. Indiana"        "22. Arkansas"       "23. Wisconsin"     
#[17] "24. South Carolina" "25. Nevada"         "26. North Carolina" "27. Michigan"      
#[21] "28. Louisiana"      "29. Ohio"           "3. Kansas"          "30. Maine"         
#[25] "31. Virginia"       "32. South Dakota"   "33. Pennsylvania"   "34. Oregon"        
#[29] "35. Nebraska"       "36. Iowa"           "37. New Mexico"     "38. Washington"    
#[33] "39. Colorado"       "4. Oklahoma"        "40. Illinois"       "41. Minnesota"     
#[37] "42. Delaware"       "43. Rhode Island"   "44. Maryland"       "45. Connecticut"   
#[41] "46. California"     "47. Hawaii"         "48. New Jersey"     "49. Massachusetts" 
#[45] "5. Montana"         "50. New York"       "6. Utah"             "7. North Dakota"   
#[49] "8. Texas"           "9. Georgia"
罗纳克·沙

我们可以从字符向量中删除数字和点,然后使用order来仅对名称进行排序并对原始向量进行子集化。

StateRankings[order(sub("^\\d+\\.\\s+", "", StateRankings))]

#[1] "18. Alabama"  "2. Alaska"  "1. Arizona"  "12. Florida"  "19. Idaho"        
# 6] "14. Kentucky"  "16. Mississippi"  "10. Missouri" "15. New Hampshire"     
#[10] "11. Tennessee" "13. West Virginia" "17. Wyoming" 

仅供参考,R具有内置状态名称,该名称以升序存储在 state.name

state.name
#[1] "Alabama"   "Alaska"  "Arizona"  "Arkansas"  "California" "Colorado"
#[7] "Connecticut"  "Delaware"  "Florida"   "Georgia"  "Hawaii" "Idaho"........

数据

StateRankings <- c("1. Arizona", "10. Missouri", "11. Tennessee" ,"12. Florida",
 "13. West Virginia" ,"14. Kentucky", "15. New Hampshire", "16. Mississippi",
 "17. Wyoming", "18. Alabama", "19. Idaho" ,"2. Alaska")

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何按数字顺序对数据路径进行排序?

如何在C ++中从对数字进行排序到按字母顺序进行排序

按这些数据帧的名称的字母顺序对数据帧列表进行排序

MySQL-按字母顺序对数字进行排序

用数字按字母顺序对数组进行排序

按字母顺序对数据表进行字母排序,然后按R中的数字值排序

如何按用户定义的顺序对数据帧进行排序(例如,非字母顺序)

如何按字母顺序对 csv 数据进行排序,然后按列按数字排序?

如何按字母顺序按索引值对数据框的列进行排序

当某些值有点时,如何按字母数字顺序对数组进行排序?

按varchar字母顺序对数据进行排序

如何在数据透视表中按字母数字顺序对列数据进行排序?

如何按字母顺序对数组排序?

如何按字母顺序对数组排序?

在 linux 中按字母数字顺序对数字进行优先排序

如何按不在开头的字母按字母顺序对行进行排序?

按数据属性(按字母顺序,然后按数字顺序)对列表项进行排序

Highcharts-如何按名称对数据进行排序?

我无法使用neDB数据库按字母顺序对数据进行排序

按数字对数据框进行排序

MySQL-如何按名称排序,然后按字母数字顺序在表上排序?

如何按名称首字母按字母顺序对表格进行排序?

验证并格式化JSON,而无需使用'jsonlint'按字母顺序对数据进行排序

使用 Django 中的标题按字母顺序对数据库进行排序

根据搜索输入按字母顺序对数组进行排序

按字母顺序对数组进行排序:Coffeescript

Numpy Python:按字母顺序对数组的列进行排序

使用sort方法按字母顺序对数组进行排序

Javascript按日期和字母顺序对数组进行排序