次のファイルがあります。
-38 miRNA18 8 44 dvex109349 6618 6580
35 miRNA5 21 57 dvex110330 1917 1952
26 miRNA2 27 54 dvex110362 1092 1118
-30 miRNA43 60 90 dvex110558 464 434
30 miRNA2 31 63 dvex111097 1359 1389
-30 miRNA31 43 73 dvex111146 4337 4307
-29 miRNA32 32 63 dvex111322 5680 5651
35 miRNA43 60 95 dvex111435 5612 5647
-26 miRNA43 55 80 dvex111770 723 697
-39 miRNA43 21 58 dvex112127 4928 4889
-32 miRNA2 70 102 dvex112254 1554 1522
33 miRNA17 56 89 dvex113799 2985 3018
38 miRNA17 26 64 dvex113799 2985 3023
40 miRNA17 30 70 dvex113799 2985 3025
これをハッシュに挿入する必要がありますが、これらのパラメーターを使用すると、列 5 (dvex####) がキーになる必要があり、その他はこのキーの値になります。アイデアは、それを等しいキーでグループ化し、列6の下限値と列7の最大値を取得することです。キーを配列としてハッシュを作成し、そのパラメーターで整理すると便利だと思います。
出力は次のようになります。
-38 miRNA18 8 44 dvex109349 6618 6618
35 miRNA5 21 57 dvex110330 1917 1952
-38 miRNA18 8 44 dvex109349 6618 6580
35 miRNA5 21 57 dvex110330 1917 1952
26 miRNA2 27 54 dvex110362 1092 1118
-30 miRNA43 60 90 dvex110558 464 434
30 miRNA2 31 63 dvex111097 1359 1389
-30 miRNA31 43 73 dvex111146 4337 4307
-29 miRNA32 32 63 dvex111322 5680 5651
35 miRNA43 60 95 dvex111435 5612 5647
-26 miRNA43 55 80 dvex111770 723 697
-39 miRNA43 21 58 dvex112127 4928 4889
-32 miRNA2 70 102 dvex112254 1554 1522
33 miRNA17 26 70 dvex113799 2985 3025 #note this result is a group.
ソリューションは異なる列を持つファイルに基づいているため、非常に興味深いです...