我有幾列的遺傳變異數據,目前我的變異/系的順序錯誤,需要按染色體排序。我已經嘗試了幾種方法來使用類似問題的答案來做到這一點,但沒有任何效果,主要是空文件給我。
目前我的染色體順序是:
1
10
11
12
13
14
15
16
17
18
19
2
20
21
22
3
4
5
6
7
8
9
這些行需要按從 1 到 22 升序排序。
我試過了:
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.
這些運行但是當我嘗試時head test.avinput
它沒有給我任何結果,或者當我檢查awk '{print $1}' test.avinput | sort -u
訂單時仍然是錯誤的 - 我還能嘗試什麼來改變這個?
幾行的範例如下:
File.avinput:#3 列是染色體、開始和結束 - 我沒有標題
1 10 11
10 200 201
2 20 21
22 2000 2001
預期有序輸出
1 10 11
2 20 21
10 200 201
22 2000 2001
目前嘗試任何形式的使用sort -n
都會給我一個空文件。
答案1
根據更改的任務進行更新。
包含您建立的資料的檔案file1
:
$ cat file1
1 10 11
10 200 201
2 20 21
22 2000 2001
現在我們對文件行進行排序並將結果寫入file2
:
$ cat file1|sort -n > file2
或者我們甚至可以簡化它:
$ sort -n file1 > file2
檢查結果file2
:
$ cat file2
1 10 11
2 20 21
10 200 201
22 2000 2001