首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >根据R中的字符对数据进行排序

根据R中的字符对数据进行排序
EN

Stack Overflow用户
提问于 2020-11-18 11:04:49
回答 1查看 28关注 0票数 0

我得到了数据(代码),我想按照combName的数字顺序对它进行排序。

代码语言:javascript
复制
> code
# A tibble: 1,108 x 2
   combName sumLength
   <chr>        <dbl>
 1 20-1          8.05
 2 20-10        14.7 
 3 20-100       21.2 
 4 20-101       17.6 
 5 20-102       25.4 
 6 20-103       46.3 
 7 20-104       68.7 
 8 20-105       24.3 
 9 20-106       46.3 
10 20-107       14.0 
# ... with 1,098 more rows

之后,左列应该如下所示:

代码语言:javascript
复制
> code
# A tibble: 1,108 x 2
   combName sumLength
   <chr>        <dbl>
 1 20-1          8.05
 2 20-2          ...
 3 20-3          ...
 4 20-4          ...
 5 20-5          ...
...
10 20-10        14.7 
# ... with 1,098 more rows

它不知道我能做些什么来达到这种格式。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-11-18 11:15:00

这是否有效:

代码语言:javascript
复制
library(dplyr)
library(tidyr)
df
# A tibble: 10 x 2
   combName sumLength
   <chr>        <dbl>
 1 20-102       25.4 
 2 20-100       21.2 
 3 20-101       17.6 
 4 20-105       24.3 
 5 20-10        14.7 
 6 20-103       46.3 
 7 20-104       68.7 
 8 20-1          8.05
 9 20-106       46.3 
10 20-107       14   
df %>% separate(combName, into = c('1','2'), sep = '-', remove = F) %>% 
type.convert(as.is = T) %>% arrange(`1`,`2`) %>% select(-c(`1`,`2`))
# A tibble: 10 x 2
   combName sumLength
   <chr>        <dbl>
 1 20-1          8.05
 2 20-10        14.7 
 3 20-100       21.2 
 4 20-101       17.6 
 5 20-102       25.4 
 6 20-103       46.3 
 7 20-104       68.7 
 8 20-105       24.3 
 9 20-106       46.3 
10 20-107       14   
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/64891816

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档