ホームページ  >  記事  >  バックエンド開発  >  For ループで生成された Pandas DataFrame を結合する方法: 包括的なソリューション

For ループで生成された Pandas DataFrame を結合する方法: 包括的なソリューション

Barbara Streisand
Barbara Streisandオリジナル
2024-10-30 14:01:02308ブラウズ

How to Combine Pandas DataFrames Generated in a For Loop: A Comprehensive Solution

For ループで生成された Pandas DataFrames の結合: 包括的なソリューション

データ操作に関しては、Pandas は強力なツール セットを提供します構造化データを操作するためのものです。一般的なタスクの 1 つは、複数のソースからのデータを結合することです。これを実現する 1 つの方法は、for ループでデータフレームを生成し、それらを追加して統合データフレームを作成することです。

for ループで生成されたデータフレームを追加するには、あなたが試したもの。あなたが提供したコード:

appended_data = pandas.DataFrame.append(data) # requires at least two arguments

には引数として少なくとも 2 つのデータフレームが必要ですが、複数のデータフレームを 1 つずつ追加するのには適していません。代わりに、pd.concat を使用して、データフレームのリストを単一のより大きなデータフレームにマージできます。

改善されたソリューションは次のとおりです。

<code class="python">appended_data = []
for infile in glob.glob("*.xlsx"):
    data = pandas.read_excel(infile)
    # Store each dataframe in a list
    appended_data.append(data)
# Concatenate the list of dataframes into a single dataframe
appended_data = pd.concat(appended_data)
# Write the resulting dataframe to a new Excel file
appended_data.to_excel('appended.xlsx')</code>

この改訂されたコードでは、

  1. 個々のデータフレームを保存するために空のリスト appended_data を作成します。
  2. ループ内で、各 Excel ファイルをデータフレームに読み取り、このリストに追加します。
  3. pd を使用します。 concat では、リスト内のすべてのデータフレームを appended_data という名前の単一のデータフレームにマージします。
  4. 最後に、追加されたデータフレームを「appended.xlsx」という名前の新しい Excel ファイルに書き込みます。

このアプローチにより、ループ内で生成されたすべてのデータフレームが単一のデータフレームに結合され、統合されたデータセットが提供されます。

以上がFor ループで生成された Pandas DataFrame を結合する方法: 包括的なソリューションの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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