如何以升序方式对数据框内的列元素进行排序?
例如,我有:
表< -data.frame(col1 = c(“w d f”,“g t y”,“c d a”,“o w q”))
col1
w d f
g t y
c d a
o w q
我想要
col1
d f w
g t y
a d c
o q w
答案 0 :(得分:1)
我们将'col1'按空格分成list
,sort
元素,方法是将元素(sapply
)和paste
循环在一起
table$col1 <- sapply(strsplit(as.character(table$col1), ' '),
function(x) paste(sort(x), collapse=' '))
table$col1
#[1] "d f w" "g t y" "a c d" "o q w"
答案 1 :(得分:0)
sort_c <- function(x){
strsplit(as.character(x),"") %>% unlist() %>% sort() %>% str_c(collapse="")
}
apply(table,1,sort_social_q) %>% as.data.frame()
输出: 1 dfw 2克 3个 4 oqw