1

How may I reorder the values of rows alphabetically? If I have the following dataset:

    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

The desired subset output would be:

    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

Thanks in advance!

GPD
  • 33
  • 5

1 Answers1

1

We can use sort with apply and MARGIN = 1

df1[-1] <- t(apply(df1[-1], 1, sort))

-output

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

data

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"))
akrun
  • 874,273
  • 37
  • 540
  • 662