如何使用 Python 將 Pandas DataFrame 寫入 TSV 檔案?


Pandas DataFrame 可以使用 Pandas 庫的 to_csv() 方法寫入製表符分隔值 (TSV) 檔案。Pandas 是 Python 中一個強大的資料處理和分析庫。它提供了各種處理結構化資料的功能,包括讀取和寫入不同格式的資料。TSV(製表符分隔值)是一種常用的儲存表格資料的格式,其中列以製表符分隔。在本文中,我們將透過示例瞭解如何使用 Python 將 Pandas DataFrame 寫入 TSV 檔案。

演算法

要將 Pandas DataFrame 作為 TSV 檔案寫入,我們可以遵循以下步驟

  • 匯入必要的庫:我們需要匯入 pandas 庫來處理 DataFrame。

  • 建立 DataFrame:我們需要建立或獲取要作為 TSV 檔案寫入的 DataFrame。這可以透過從檔案、資料庫讀取資料或從頭建立 DataFrame 來完成。

  • 指定輸出檔案路徑:確定要儲存 TSV 檔案的檔案路徑和名稱。

  • 將 DataFrame 寫入 TSV 檔案:使用 Pandas 的 to_csv() 函式將 DataFrame 寫入指定的檔案路徑。將 sep 引數設定為 '\t' 以指示列應以製表符分隔。

  • 驗證輸出:檢查 TSV 檔案是否已成功建立幷包含所需資料。

將 DataFrame 作為 TSV 檔案寫入

DataFrame 是 Python 中 Pandas 庫提供的一種二維表格資料結構。它旨在儲存和處理結構化資料,類似於表格或電子表格。

TSV 是一種用於儲存和交換表格資料的檔案格式,其中列以製表符 ("\t") 分隔。TSV 檔案類似於 CSV(逗號分隔值)檔案,但使用製表符而不是逗號作為分隔符。

我們可以使用 pandas 庫提供的 to_csv() 方法在 Python 中將 DataFrame 作為 TSV 檔案寫入。在下面的示例中,我們將包含員工資訊的 employee DataFrame 寫入 TSV 檔案。

語法

df.to_csv(output_file, sep='\t', index=False, header=True)

這裡使用的引數是

  • df: 要作為 TSV 檔案寫入的 DataFrame。

  • output_file: 輸出 TSV 檔案的路徑和名稱。

  • sep: 用於分隔 TSV 檔案中列的分隔符。將其設定為 '\t' 以進行製表符分隔。

  • index: 是否在輸出檔案中包含索引列。將其設定為 False 以排除索引列。它是可選的

  • header: 是否在輸出檔案的首行包含列名。將其設定為 True 以包含列名。它是可選的

示例

在下面的示例中,我們匯入 pandas 庫並建立一個名為 df 的 DataFrame,其中包含“姓名”、“年齡”和“薪資”列。我們將輸出檔案路徑指定為“employees.tsv”。to_csv() 函式用於將 DataFrame 寫入指定的檔案路徑。我們將 sep='\t' 設定為指示列應以製表符分隔。index=False 引數用於從輸出檔案中排除索引列。最後,我們列印一條成功訊息,指示 DataFrame 已作為 TSV 檔案寫入。

import pandas as pd

# Create a DataFrame
data = {
    'Name': ['John', 'Alice', 'Bob'],
    'Age': [28, 32, 45],
    'Salary': [50000, 60000, 75000]
}
df = pd.DataFrame(data)

# Specify the output file path
output_file = 'employees.tsv'

# Write the DataFrame to a TSV file
df.to_csv(output_file, sep='\t', index=False)

print(f"DataFrame successfully written as {output_file} \n {df}")

輸出

DataFrame successfully written as employees.tsv 
     Name  Age  Salary
0   John   28   50000
1  Alice   32   60000
2    Bob   45   75000

將帶有自定義列名的 DataFrame 作為 TSV 檔案寫入

有時我們可能希望將帶有自定義列名的 DataFrame 作為 TSV 檔案寫入。在這種情況下,我們可以在將 DataFrame 寫入 csv 檔案之前為列提供自定義名稱。

示例

在下面的示例中,我們建立一個名為 df 的 DataFrame,其中包含“產品”、“已售數量”和“收入”列。我們將輸出檔案路徑指定為“sales.tsv”。我們還使用 header 引數指定自定義列名,該引數設定為 column_names。其餘步驟與將普通 DataFrame 寫入 TSV 值的過程類似。

import pandas as pd

# Create a DataFrame with custom column names
data = {
    'Product': ['A', 'B', 'C'],
    'Units Sold': [100, 200, 150],
    'Revenue': [5000, 8000, 6000]
}
df = pd.DataFrame(data)

# Specify the output file path
output_file = 'sales.tsv'

# Specify custom column names
column_names = ['Product Name', 'Total Units', 'Total Revenue']

# Write the DataFrame to a TSV file with custom column names
df.to_csv(output_file, sep='\t', index=False, header=column_names)

print(f"DataFrame with custom column names successfully written as {output_file}")

輸出

DataFrame with custom column names successfully written as sales.tsv

結論

在本文中,我們討論瞭如何使用 pandas 庫的 to_csv() 方法將 pandas DataFrame 作為 TSV 寫入。透過指定輸出檔案路徑、分隔符和其他可選引數,我們可以輕鬆生成包含 DataFrame 資料的 TSV 檔案。我們還可以為列新增自定義名稱,以便在將資料寫入 TSV 檔案時。

更新於: 2023年10月16日

4K+ 次檢視

開啟你的 職業生涯

透過完成課程獲得認證

開始學習
廣告

© . All rights reserved.