如何重新排序 R 中的行值?

How to reorder row values in R?

如何按字母顺序对行的值重新排序?如果我有以下数据集:

    DOC      A                B                C               D
 1 Doc1    apple           coconut            berry           pear 
 2 Doc2    prune            apple            banana           berry
 3 Doc3  coconut           cherry             apple          banana
 4 Doc4    berry           banana             pear            prune

所需的子集输出为:

    DOC      A                B                C               D
 1 Doc1    apple            berry            coconut          pear 
 2 Doc2    apple            banana           berry            prune
 3 Doc3    apple            banana           cherry           coconut
 4 Doc4    banana           berry            pear             prune

提前致谢!

我们可以将 sortapplyMARGIN = 1

一起使用
df1[-1] <- t(apply(df1[-1], 1, sort))

-输出

df1
#   DOC      A      B       C       D
#1 Doc1  apple  berry coconut    pear
#2 Doc2  apple banana   berry   prune
#3 Doc3  apple banana  cherry coconut
#4 Doc4 banana  berry    pear   prune

数据

df1 <- structure(list(DOC = c("Doc1", "Doc2", "Doc3", "Doc4"), A = c("apple", 
"prune", "coconut", "berry"), B = c("coconut", "apple", "cherry", 
"banana"), C = c("berry", "banana", "apple", "pear"), D = c("pear", 
"berry", "banana", "prune")), class = "data.frame", row.names = c("1", 
"2", "3", "4"))