如何將TSV檔案載入到Pandas DataFrame中?


有時,任務是分析資料集並使用來自TSV(製表符分隔值)檔案的資料。為此,TSV檔案有時會被轉換為資料框。資料框是一個帶標籤的二維結構,具有不同型別的列。在本文中,我們將使用兩個不同的示例,結合Python程式碼和名為pandas的Python庫來讀取TSV檔案並將其載入到資料框中。對於這些示例,我們使用Kaggle上提供的一個Zomato資料集。Kaggle資料集以CSV(逗號分隔值)格式提供,因此首先下載它,然後使用線上軟體連結將其轉換為TSV格式。在第一個示例中,我們使用計算機系統中安裝的Python來執行一個為讀取TSV檔案並使用pandas函式將其載入到資料框而編寫的Python程式。在另一個示例中,我們將使用Google Colab演示一種方法,即使沒有在計算機中安裝Python,仍然可以使用Python和pandas,並在使用另一個函式後將TVS檔案讀取到資料框中。

使用的Zomato.TSV檔案

圖:此tsv檔案包含9551行和21列。

示例1:使用帶delimiter='\t'的read_table函式將TSV檔案載入到Pandas DataFrame中

設計步驟和編碼

  • 步驟1 − 首先匯入pandas。Pandas是一個開源的、易於使用且靈活的庫,通常用於在使用Python資料集時進行資料分析和處理。

  • 步驟2 − 現在讀取zomato.tsv檔案,因為這裡給出的資料集將用於將其載入到資料框中。

  • 步驟3 − 建立一個數據框dff1,並使用pandas中的read_table函式讀取TSV檔案。

  • 步驟4 − 使用delimiter='\t'和zomato.tsv的路徑。透過使用head函式列印此資料框中的一些行和列。

  • 步驟5 − 建立一個數據框dff2,並再次使用read_table函式,但這次選擇索引列。

  • 步驟6 − 建立一個數據框dff3,並再次使用read_table函式,但在跳過一些行之後列印行。

儲存資料分析所需的資料檔案/CSV檔案

對於這些示例,我們將使用Kaggle上提供的資料。登入Kaggle並從此連結下載CSV檔案: https://www.kaggle.com/datasets/shrutimehta/zomato-restaurants-data

該資料集以CSV檔案形式提供。

將CSV檔案轉換為TSV檔案,因為示例需要TSV檔案

使用以下線上轉換器將CSV檔案轉換為TSV 格式。https://products.groupdocs.app/conversion/csv-to-tsv

上傳CSV檔案,進行轉換,然後下載TSV檔案。現在,將此zomato.tsv檔案用於以下示例。

使用帶delimiter='\t'的read_table函式將TSV檔案載入到Pandas DataFrame中。

在Python檔案中編寫以下程式碼

import pandas as pdd
dff1 = pdd.read_table("C:/Users/saba2/Desktop/article/articles_py/tsv/zomato.tsv",delimiter='\t')
print(dff1.head())
dff2 = pdd.read_table('C:/Users/saba2/Desktop/article/articles_py/tsv/zomato.tsv', delimiter='\t',index_col=1)
print(dff2.head())
dff3 = pdd.read_table('C:/Users/saba2/Desktop/article/articles_py/tsv/zomato.tsv', delimiter='\t',skiprows=range(3,6))
print(dff3.head())

輸出

在命令視窗中執行python檔案

圖1:顯示使用cmd視窗的結果。

示例2:使用帶sep='\t'的read_csv函式將TSV檔案載入到Pandas DataFrame中

設計步驟和編碼

  • 步驟1 − 使用您的Google帳戶登入。轉到Google Colab。開啟一個新的Colab筆記本,並在其中編寫python程式碼。

  • 步驟2 − 上傳從Kaggle下載的csv檔案轉換成的tsv檔案 zomato.tsv。這裡給出的資料集將用於將其載入到資料框中。

  • 步驟3 − 現在匯入pandas。Pandas是一個開源的、易於使用且靈活的庫,通常用於在使用Python資料集時進行資料分析和處理。

  • 步驟4 − 建立一個數據框dff,並使用pandas中的read_csv函式讀取TSV檔案。

  • 步驟5 − 使用sep='\t'和檔名'zomato.tsv'。透過使用head函式列印此資料框中的一些行和列。

  • 步驟6 − 列印資料框的形狀。它將顯示資料集中有多少行和列。

  • 步驟7 − 然後宣告一些列名來描述,這次不要列印所有列。

  • 步驟8 − 點選給定程式碼單元格上的播放按鈕執行程式。檢查結果,它將顯示在colab筆記本中。

上傳資料,tsv檔案

#Uploading the tsv
from google.colab import files
data_to_load = files.upload()

讀取TSV檔案並將指定列載入到資料框中的程式碼

#import the required Library
import pandas as pdd
#Select all columns 
#dff = pdd.read_csv("zomato.tsv",sep="\t")
#Select specified columns 
dff = pdd.read_csv("zomato.tsv",sep="\t", usecols = ['Restaurant ID','Restaurant Name','City'])
#print the dataframe header and some rows
dff.head()

輸出

   Restaurant ID          Restaurant Name                City
0        6317637         Le Petit Souffle         Makati City 
1        6304287         Izakaya Kikufuji         Makati City
2        6300002   Heat - Edsa Shangri-La    Mandaluyong City
3        6318506                     Ooma    Mandaluyong City
4        6314302              Sambo Kojin    Mandaluyong City

結論

在這篇Python文章中,我們說明了兩個不同的示例,展示瞭如何將TSV載入到資料框中。首先,我們給出了從Kaggle下載CSV格式資料集,然後將其轉換為TSV格式檔案並儲存的方法。此TSV檔案將使用程式中的pandas read_table函式載入到資料框中。在第二個示例中,我們使用Google Colab編寫Python程式,並使用Pandas read_csv函式使用相同的TSV格式資料集將資料載入到資料框中。

更新於:2023年5月11日

4K+ 次瀏覽

啟動您的職業生涯

透過完成課程獲得認證

開始
廣告