【发布时间】:2020-09-14 23:21:26
【问题描述】:
我有一个数据框,我正在尝试按其中包含数字的字符进行排序。
该列看起来像这样(Team1,Team2,Team3,Team4,Team5,....Team10),当我对其进行排序时,它会将其排序为(Team1,Team10,Team2 ....)。我在该列中使用了数百个不同的术语,所以有没有一种方法可以对列进行排序,以便将 Team2 视为比 Team3 更早的值?
【问题讨论】:
-
你可以使用
df1$col1 <- gtools::mixedsort(df1$col1) -
或者,您可以提取团队编号并使用它进行排序(例如
df %>% mutate(team_no = str_extract(col1, "\\d+")) %>% arrange(team_no))