首頁 >後端開發 >Python教學 >如何解析Pandas read_csv中不規則分隔符號的資料?

如何解析Pandas read_csv中不規則分隔符號的資料?

Susan Sarandon
Susan Sarandon原創
2024-10-22 08:18:02935瀏覽

How Do I Parse Data with Irregular Separators in Pandas read_csv?

克服Pandas read_csv 中的不規則分隔符號

從具有不規則分隔符號的檔案中讀取資料時,pandas read_csv 方法可能會遇到困難。與無縫處理不同空格的 Python split() 方法不同,read_csv 可能很難破解由不一致的空格和製表符分隔的資料。

為了解決這個挑戰,pandas 提供了用於定義分隔符號的多種選項。一種方法涉及使用正規表示式 (regex)。透過使用 read_csv 中的 delimiter 參數,您可以指定捕獲所需分隔符號的正規表示式模式。這允許您考慮空格和製表符的組合,確保準確解析。

或者,您可以利用 delim_whitespace 參數,其操作方式與 Python split() 方法類似。透過將 delim_whitespace 設為 True,pandas 會將任何空白(包括空格和製表符)視為分隔符。這消除了指定特定正規表示式模式的需要。

考慮以下範例:

import pandas as pd

data = pd.read_csv("irregular_separators.csv", header=None, delimiter=r"\s+")

print(data)

# Output:
#   0  1  2  3  4
# 0  a  b  c  1  2
# 1  d  e  f  3  4

在這種情況下,不規則_separators.csv 包含由製表符、空格甚至組合分隔的列兩個都。透過指定正規表示式模式,read_csv 成功解析資料並建立 DataFrame。

或者,使用 delim_whitespace:

data = pd.read_csv("irregular_separators.csv", header=None, delim_whitespace=True)

print(data)

# Output (same as above):
#   0  1  2  3  4
# 0  a  b  c  1  2
# 1  d  e  f  3  4

利用 read_csv 中分隔符的靈活性,可以有效處理不規則的情況資料檔案中的空格並提取有意義的資訊進行分析。

以上是如何解析Pandas read_csv中不規則分隔符號的資料?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn