Pythonのデータ解析ライブラリであるpandasは、様々なデータファイルを扱うことができます。TSVファイルは、タブ文字で区切られたテキストファイルの一種ですが、pandasを使用することで容易に読み込むことができます。この記事では、Pythonのpandasを使用してTSVファイルを読み込む方法を解説します。
pandasをインポートする
まずは、pandasをインポートします。以下のように、pandasをインポートしてください。
import pandas as pd
TSVファイルの読み込み
pandasを使ってTSVファイルを読み込むには、read_csv()
メソッドを使います。しかし、TSVファイルはタブ文字で区切られているため、delimiter
引数を使って、区切り文字を指定する必要があります。また、同様にsep
引数を使っても区切り文字を指定することができます。
以下は、read_csv()
メソッドを使って、example.tsv
ファイルを読み込む例です。
df = pd.read_csv('example.tsv', delimiter='\t')
この例では、example.tsv
ファイルを読み込んでいます。ファイル名としてexample.tsv
を指定し、区切り文字として\t
(タブ文字)を指定しています。読み込んだデータは、df
というpandasのデータフレームに格納されます。
もし、区切り文字を指定しない場合、デフォルトでは,
が区切り文字として使われます。そのため、example.tsv
ファイルを読み込む場合は、必ずdelimiter
引数またはsep
引数を使って、区切り文字を指定する必要があります。
様々な応用例
実際に、example.tsv
ファイルがどのような内容か確認してみましょう。
name age gender Alice 20 Female Bob 25 Male Charlie 30 Male
このファイルは、3つのカラム(name
, age
, gender
)からなるTSVファイルです。read_csv()
メソッドを使って、このファイルを読み込み、pandasのデータフレームに変換してみましょう。
import pandas as pd df = pd.read_csv('example.tsv', delimiter='\t') print(df)
実行結果
name age gender 0 Alice 20 Female 1 Bob 25 Male 2 Charlie 30 Male
read_csv()
メソッドによって、example.tsv
ファイルが正しく読み込まれ、pandasのデータフレームに変換されています。
read_csv()
メソッドのオプション
read_csv()
メソッドには、多くのオプションがあります。たとえば、ヘッダーがないファイルを読み込む場合は、header=None
オプションを指定することができます。また、読み込むデータの行数を制限したり、不要な列を削除したりすることも可能です。
例えば、example.tsv
ファイルにヘッダーがなく、name
、age
、gender
の代わりにcol1
、col2
、col3
という列名をつける場合は、以下のようにheader=None
とnames
オプションを指定して読み込むことができます。
import pandas as pd df = pd.read_csv('example_noheader.tsv', delimiter='\t', header=None, names=['col1', 'col2', 'col3']) print(df)
実行結果
col1 col2 col3 0 Alice 20 Female 1 Bob 25 Male 2 Charlie 30 Male
まとめ
以上がPythonでTSVファイルを読み込む方法です。pandasのread_csv()
メソッドでdelimiter
引数またはsep
引数を使いタブ文字を区切り文字に指定することで、実現することが可能です。また、read_csv()
メソッドのオプションを変更することで様々なデータの形式に対応可能です。これらのプログラムはPythonの基本的な文法とライブラリで実装することができます。Pythonの基礎学習には下記のようなサイトの利用が有効です。