Tengo datos de variantes genéticas con varias columnas, actualmente mis variantes/líneas están en el orden incorrecto y deben ordenarse por cromosoma. Probé algunas formas de hacer esto usando respuestas de preguntas similares, pero ninguna funciona y, en su mayoría, me dan archivos vacíos.
actualmente mi orden de cromosomas es:
1
10
11
12
13
14
15
16
17
18
19
2
20
21
22
3
4
5
6
7
8
9
Estas líneas deben ordenarse en orden ascendente del 1 al 22.
He intentado:
sort -k 1,1 -k2,2n file.avinput > test.avinput
sortBed -i file.avinput > test.avinput
sort -k1,1V -k2,2g file.avinput > test.avinput
bedtools sort -g file.bed> test.avinput #gives *ERROR: Need -i BED file.
Estos se ejecutan, pero cuando lo intento head test.avinput
no me da nada, o cuando verifico awk '{print $1}' test.avinput | sort -u
el pedido sigue siendo incorrecto. ¿Qué más puedo intentar para cambiar esto?
Un ejemplo de cómo se ven un par de líneas es este:
File.avinput: Las columnas n.° 3 son cromosomas, inicio y final; no tengo encabezado
1 10 11
10 200 201
2 20 21
22 2000 2001
Salida ordenada esperada
1 10 11
2 20 21
10 200 201
22 2000 2001
Actualmente, intentar cualquier forma de uso sort -n
me da un archivo vacío.
Respuesta1
ACTUALIZADO según la tarea modificada.
Archivo file1
con tus datos creado:
$ cat file1
1 10 11
10 200 201
2 20 21
22 2000 2001
Ahora ordenamos las líneas del archivo y escribimos los resultados en file2
:
$ cat file1|sort -n > file2
O incluso podemos simplificarlo:
$ sort -n file1 > file2
Comprobando los resultados en file2
:
$ cat file2
1 10 11
2 20 21
10 200 201
22 2000 2001