Tenho dados de variantes genéticas com várias colunas, atualmente minhas variantes/linhas estão na ordem errada e precisam ser classificadas por cromossomo. Tentei algumas maneiras de fazer isso usando respostas de perguntas semelhantes, mas nenhuma funcionou, principalmente fornecendo arquivos vazios.
atualmente minha ordem cromossômica é:
1
10
11
12
13
14
15
16
17
18
19
2
20
21
22
3
4
5
6
7
8
9
essas linhas precisam ser classificadas em ordem crescente de 1 a 22.
Eu tentei:
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.
Eles rodam, mas quando tento head test.avinput
não dá nada, ou quando verifico awk '{print $1}' test.avinput | sort -u
o pedido ainda está errado - o que mais posso tentar para mudar isso?
Um exemplo da aparência de algumas linhas é este:
File.avinput: #3 colunas são cromossomo, início e fim - não tenho cabeçalho
1 10 11
10 200 201
2 20 21
22 2000 2001
Saída ordenada esperada
1 10 11
2 20 21
10 200 201
22 2000 2001
Atualmente, tentar qualquer forma de uso sort -n
me dá um arquivo vazio.
Responder1
ATUALIZADO de acordo com a tarefa alterada.
Arquivo file1
com seus dados criados:
$ cat file1
1 10 11
10 200 201
2 20 21
22 2000 2001
Agora classificamos as linhas do arquivo e escrevemos os resultados em file2
:
$ cat file1|sort -n > file2
Ou podemos até simplificá-lo:
$ sort -n file1 > file2
Verificando os resultados em file2
:
$ cat file2
1 10 11
2 20 21
10 200 201
22 2000 2001