ホームページ >バックエンド開発 >Python チュートリアル >Pandas DataFrame の文字列列を 2 つの新しい列に効率的に分割する方法

Pandas DataFrame の文字列列を 2 つの新しい列に効率的に分割する方法

Mary-Kate Olsen
Mary-Kate Olsenオリジナル
2024-12-24 12:55:14904ブラウズ

How to Efficiently Split a String Column in a Pandas DataFrame into Two New Columns?

データフレーム文字列列を 2 つの列に分割する方法

TL;DR バージョン:

次の単純なケースの場合区切り文字のあるテキスト列があり、2 つの列を作成したい場合、最も簡単な解決策は次のとおりです。

df[['A', 'B']] = df['AB'].str.split(' ', n=1, expand=True)

詳細:

Andy Hayden のアプローチは、次のような力を効果的に示しています。 str.extract() メソッドの。ただし、既知のセパレータを使用した単純な分割の場合は、.str.split() メソッドで十分です。これは文字列の列 (Series) を操作し、リストの列 (Series) を返します。

列の .str 属性を使用すると、列内の各要素を文字列として扱い、メソッドを効率的に適用できます。これには、インデックスによって文字列の各要素を取得するためのインデックス インターフェイスがあり、.str.split() から返されたリストをスライスおよびダイスすることができます。

Python タプル アンパックを使用して、

df['A'], df['B'] = df['AB'].str.split('-', n=1).str

を使用してリストを作成することもできます。また、.str.split() の Expand=True パラメータを利用して、2 つのcolumns:

df[['A', 'B']] = df['AB'].str.split('-', n=1, expand=True)

expand=True バージョンは、「分割」が欠落している列に None 値を挿入することでそのようなケースを処理するため、異なる長さの分割を扱う場合に有利です。

以上がPandas DataFrame の文字列列を 2 つの新しい列に効率的に分割する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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