私は、別のファイルの列に従ってソートしたいファイルを持っています。両方のファイルに共通の列があり、ソートは最初のファイルのソート方法に従って行う必要があります。例えば別のファイルの列に基づいてファイルをソートする方法はありますか?
: File_1含ま:
chr2L 2808299 2808300 EOG698VMB 4.15912 + 1011
chr2L 5218259 5218260 EOG6ZPFGT 15.0025 + 91
chr2L 5329859 5329860 EOG62JPCT 30.1536 + 30
chr2L 6225049 6225050 EOG60024V 3.26788 + 29
chr2L 6255843 6255844 EOG61C7HF 12.6259 + 32
chr2L 6481023 6481024 EOG6CZC26 1.33686 + 176
chr2L 8522135 8522136 EOG6FN543 40.2544 + 142
chr2L 9769068 9769069 EOG6FBJDN 17.8248 + 15
chr2L 9782391 9782392 EOG6R24FN 9.50656 + 393
File_2が含ま:
chrXL_group1e 895799 895800 EOG67ST24 71.1687 + 62
chrXL_group1e 3113233 3113234 EOG6PVPKK 7.19303 + 847
chrXL_group1e 3424413 3424414 EOG6QC1SM 6.76991 + 81
chrXL_group1e 5698899 5698900 EOG651FCJ 93.5094 + 124
chrXL_group1e 6595546 6595547 EOG60K8KJ 28.349 + 185
chrXL_group1e 7594832 7594833 EOG6C2HX6 1.7771 + 2782
chrXL_group1e 8307304 8307305 EOG6NP7QS 229.754 + 35
chrXL_group1e 9922625 9922626 EOG6X3HMJ 8.8855 + 3744
chrXL_group1e 10297871 10297872 EOG6F7P63 2.70796 + 106
chrXL_group1e 11284647 11284648 EOG62Z5BX 282.474 + 4173
chr4_group5 213215 213216 EOG6J9NKZ 834.56 + 32
chrXR_group5 636614 636615 EOG6PVPK4 4.56969 + 152
をIカラム4(タンパク質ID)で与えられた順序に従ってFile_2の内容をソートしたいのFile_1。 (例には違いがありますので、元のファイルをアップロードすることもできます) どうすればよいですか?Python?
タンパク質IDが特定の方法でソートされているとは思いません。しかし、File_1でソートされる方法は重要です。
その他の詳細:
プログラミング言語:Pythonの3.5.1
OS:あなたの答えのためのUbuntu 16.04 LTSは
感謝。 :)
あなたの例では、ファイル2の情報がファイル1の情報とどのように関連しているかを確認するのが難しくなります(最初の列で何らかの形で一致していますか?) –
dictマッピング列要素を使用して、並べ替え順序とその辞書を並べ替えのキーとして使用 –
@NilsGudatいいえ、私は4番目の列に一致しています。両方のファイルで4番目の列の順序が同じである必要があります。 – DarkRose