📜  如何读取tsv文件python(1)

📅  最后修改于: 2023-12-03 15:24:55.473000             🧑  作者: Mango

如何读取 TSV 文件 Python

TSV 文件(Tab Separated Values)是使用制表符分隔字段的文本文件,是 CSV 文件的一种变体。在 Python 中,我们可以使用内置的 csv 模块来读取 TSV 文件。

1. 读取 TSV 文件

读取 TSV 文件与 CSV 文件的方法基本一致,只需把相应的分隔符参数改为 '\t' 即可。以下是一个简单的例子,假设我们有一个有着以下内容的 example.tsv 文件:

name    age    country
Alice   23     USA
Bob     32     Canada
Charlie 45     UK

那么我们可以使用以下代码来读取这个文件并打印出其内容:

import csv

with open('example.tsv', 'r') as tsv_file:
    tsv_reader = csv.reader(tsv_file, delimiter='\t')
    for row in tsv_reader:
        print(row)

输出内容如下:

['name', 'age', 'country']
['Alice', '23', 'USA']
['Bob', '32', 'Canada']
['Charlie', '45', 'UK']
2. 使用 Pandas 读取 TSV 文件

Pandas 是一个强大且易于使用的 Python 数据分析库,它可以帮助我们轻松地读取和处理各种数据格式,包括 TSV 文件。以下是一个示例代码,假设我们有着以下内容的 example.tsv 文件:

name    age    country
Alice   23     USA
Bob     32     Canada
Charlie 45     UK

那么我们可以使用以下代码来读取这个文件并打印出其内容:

import pandas as pd

df = pd.read_csv('example.tsv', sep='\t')
print(df)

输出内容如下:

       name  age  country
0     Alice   23      USA
1       Bob   32   Canada
2   Charlie   45       UK
3. 读取包含表头的 TSV 文件

如果 TSV 文件包含有表头,则需要在读取文件时指定 header 参数为 0,以便让 Pandas 正确解析表头。以下是一个示例代码,假设我们有着以下内容的 example_header.tsv 文件:

name    age    country
Alice   23     USA
Bob     32     Canada
Charlie 45     UK

那么我们可以使用以下代码来读取这个文件并打印出其内容:

import pandas as pd

df = pd.read_csv('example_header.tsv', sep='\t', header=0)
print(df)

输出内容如下:

       name  age  country
0     Alice   23      USA
1       Bob   32   Canada
2   Charlie   45       UK
4. 读取不同编码的 TSV 文件

如果 TSV 文件采用不同的编码方式,那么可以在读取文件时指定相应的 encoding 参数。以下是一个示例代码,假设我们有着以下内容的 example_encoding.tsv 文件:

name    age    country
Alice   23     USA
Bob     32     Canada
Charlie 45     UK

并且该文件采用 utf-16 编码方式进行保存,那么我们可以使用以下代码来读取这个文件并打印出其内容:

import pandas as pd

df = pd.read_csv('example_encoding.tsv', sep='\t', encoding='utf-16')
print(df)

输出内容与前文的示例一致,这里不再重复。

参考资料