次世代シークエンサーの登場により、最近は数十Gから数百Gといった巨大なデータを扱うことが多くなってきました。
それに伴い、最近はLinux等で見られるtarファイルやtar.gzファイルを解凍する機会も多いです。
そこで、今回はPythonでこれらのファイルを解凍する方法を記載します。
ファイルの種類について
tar、tar.gzとは
tarファイルはアーカイブといって、
複数のファイルを1つにまとめただけの非圧縮ファイルです。
tar.gzはそんなtarファイルを圧縮したファイルとなります。
Windowsだと、Lhaplusや7-zipで解凍できるのですが、
Lhaplusでは2G以上のファイルは解凍できず、
7-zipでもエラーが頻発して困っていました。
そんな時、pythonでもtar.gzを解凍できることを知りましたので、
備忘録的に記しておきます。
解凍のためのスクリプト
では、実際にファイルを解凍していきましょう!!
tar.gzの解凍と保存
ディレクトリの移動
まずは、解凍したいtar.gzファイルのあるディレクトリに移動します。
ディレクトリの移動はosを使います。
Python
import os
os.chdir('移動先のファイルパス')
os.getcwd()
#目的のディレクトリに移動できていることを確認tar.gzファイルの解凍
tar.gzの解凍には、tarfileライブラリを用います。tarfile.open('filename', 'r = gz')で解凍できます。filenameの部分は各自で変更してください。
Python
import tarfile
file = tarfile.open('ファイル名', 'r = gz')
file.extractall()
file.close()これで、Pythonでもtar.gzファイルが解凍できました。



コメント