有没有办法根据特定值组织 R 中的列?

Is there a way to organize a column in R according to specific values?

例如,我有一个包含 ID 号列的数据框:

数据 = c(3, 4, 5, 30010, 30020, 30030, 30040, 56010, 56020, 56030)

而且我想把所有长号按照短号列出来,也就是把所有3开头的号都列成3,所有4开头的号都列成4等等。我试过很多不同的东西,但我想我错过了一些东西。我更喜欢使用 dplyr 的答案,谢谢。

编辑:我想要实现的一个例子是一个看起来像这样的专栏 |ID| |:---| |3| |30010| |30020| |30030| |4| |40010| |40020| |40030|

等等....我还有很多 ID,但是为了节省时间和 space,我就从这里开始吧。

与您类似的数据创建:

library(tidyverse)
data = data.frame(c(3, 4, 5, 30010, 40010, 40020, 40030, 30020, 30030, 30040, 56010, 56020, 56030)) 
names(data) = c("ID")

代码以订购为例。它给出的输出为 snip

data2 <- data[order(as.character(data$ID)),]
data2 <- data2 %>% as.data.frame()