Pandas Groupby を使用した複数の行の文字列の連結
Pandas によるデータ操作の領域では、多くの場合、複数の行の文字列を結合する必要があります。特定の基準に基づいて行を表示します。 Groupby 操作は、これを実現するための強力な方法を提供します。実際の例を詳しく見てみましょう。
「name」、「text」、「date」列を持つ DataFrame があるとします。 「名前」と「月」の一意の組み合わせごとに「テキスト」エントリを連結したいと考えています。これを実現するには、次の手順を利用します:
GroupBy と Transform: DataFrame を「name」列と「month」列でグループ化します。次に、変換操作を適用し、ラムダ関数を使用して「テキスト」エントリをカンマ区切りで結合します:
df['text'] = df[['name','text','month']].groupby(['name','month'])['text'].transform(lambda x: ','.join(x))
重複の削除: 変換された ' text' 列には重複したエントリが含まれる可能性があります。一意のエントリを保持するには、「name」列と「month」列に基づいて重複を削除します。
df[['name','text','month']].drop_duplicates()
または、apply とreset_index を使用して、必要なエントリを取得することでプロセスを簡素化できます。出力:
df.groupby(['name','month'])['text'].apply(','.join).reset_index()
これらのメソッドにより、Pandas DataFrame の複数の行からの文字列を効率的に連結できます。データ操作タスクをより管理しやすくします。
以上がGroupby を使用して複数の Pandas DataFrame 行の文字列を連結するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。