データフレームを参加者固有のデータフレームに分割する
60 人の回答者からのデータを含む大規模なデータフレームがあり、それを分割する方法を探しています。各参加者の個別のデータフレーム。各参加者に固有のコードは、「name」という変数に保存されます。
最初に、カスタム関数を使用して、「name」変数に基づいてデータフレームを追加しようとしましたが、実行に異常に長い時間がかかりました。 .
より効率的なアプローチは、Pandas DataFrame でスライスを利用することです。次のコードは解決策を提供します。
import pandas as pd import numpy as np # Create sample data with a 'Names' column data = pd.DataFrame({'Names': ['Joe', 'John', 'Jasper', 'Jez'] * 4, 'Ob1': np.random.rand(16), 'Ob2': np.random.rand(16)}) # Create a unique list of names UniqueNames = data.Names.unique() # Create a dictionary to store the split dataframes DataFrameDict = {elem: pd.DataFrame() for elem in UniqueNames} # Iterate through UniqueNames and slice the original data for key in DataFrameDict.keys(): DataFrameDict[key] = data[data.Names == key] # Access a specific dataframe using its name specific_dataframe = DataFrameDict['Joe']
このアプローチでは、スライスに「Names」列を使用して、参加者ごとに個別のデータフレームを迅速に作成します。結果として得られるデータフレームは、辞書 DataFrameDict 内に編成され、簡単にアクセスできるようになります。
以上がPandas データフレームを参加者固有のデータフレームに効率的に分割するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。