-2

If I want to sort the Chrom# from ascending order (1 to 23) for each unique ID (as shown below there's multiple rows of same IDs, how to write the R code for it? eg) MB-0002, chrom from 1,1,1,2,4,22... etc. 1 chrom per row. I am new to R so any help would be appreciated. Thanks so much!

sample dataset

Selina
  • 1

1 Answers1

0

If you can use dplyr::arrange then you can easily sort by two variables.

tmp <- data.frame(id=c("a","a","b","a","b","c","a","b","c"), 
                  value=c(3,2,4,1,2,1,7,4,3))
tmp
#    id value
#  1  a     3
#  2  a     2
#  3  b     4
#  4  a     1
#  5  b     2
#  6  c     1
#  7  a     7
#  8  b     4
#  9  c     3

library(dplyr)
tmp %>% arrange(id, value)
#   id value
# 1  a     1
# 2  a     2
# 3  a     3
# 4  a     7
# 5  b     2
# 6  b     4
# 7  b     4
# 8  c     1
# 9  c     3

FYI, an image doesn't work as a usable sample dataset.

Jonathan Carroll
  • 3,897
  • 14
  • 34