ホームページ  >  記事  >  バックエンド開発  >  Pandas は CSV 分割で不規則な空白をどのように処理できますか?

Pandas は CSV 分割で不規則な空白をどのように処理できますか?

Mary-Kate Olsen
Mary-Kate Olsenオリジナル
2024-10-22 08:18:30206ブラウズ

How Can Pandas Handle Irregular Whitespace in CSV Separation?

Pandas の不規則な空白に対する CSV 区切り文字の柔軟性を高める

pandas.read_csv() を使用して不規則な列区切り文字を持つファイルからデータフレームを作成する場合、課題に遭遇するのはよくあることです。タブで区切られている列もあれば、さまざまな数のスペース、またはスペースとタブの組み合わせで区切られている列もあります。この不規則性は解析の問題を引き起こす可能性があります。

この問題に対処するために、pandas は正規表現 (regex) を使用するか delim_whitespace を設定するという 2 つのオプションを提供します。

正規表現を使用する

正規表現オプションを使用すると、区切り文字のパターンを指定できます。例:

<code class="python">import pandas as pd
df = pd.read_csv("file.csv", header=None, delimiter=r"\s+")</code>

ここで、r"s " は 1 つ以上の空白文字 (スペースとタブを含む) に一致します。

delim_whitespace の使用

delim_whitespace=True オプションは、空白 (スペースとタブ) を区切り文字として自動的に検出します:

<code class="python">df = pd.read_csv("file.csv", header=None, delim_whitespace=True)</code>

Python の Split() メソッドとの比較

Python でそれについて言及しました、 line.split() を使用して変数の空白を問題なく処理できます。 pandas.read_csv() は、delim_whitespace および regex オプションを通じて同様の柔軟性を提供します。

次の入力ファイル (whitespace.csv) の使用:

a    b    c 1 2
d    e    f 3 4

次のコードは、区切り文字の種類に関係なく、列が正しく区切られたデータフレームを作成します。

<code class="python">df = pd.read_csv("whitespace.csv", header=None, delim_whitespace=True)

print(df)

   0  1  2  3  4
0  a  b  c  1  2
1  d  e  f  3  4</code>

以上がPandas は CSV 分割で不規則な空白をどのように処理できますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。