根據參與者ID 將大型DataFrame 拆分為單獨的DataFrame
考慮一個場景,其中您擁有一個巨大的DataFrame,其中包含涉及60 個實驗的數據參與者。您的目標是將這個龐大的 DataFrame 分成 60 個不同的 DataFrame,每個 DataFrame 代表一個單獨的參與者。一個重要的變數「名稱」唯一標識 DataFrame 中的每個參與者。
使用自訂函數「splitframe」完成此任務的嘗試已被證明是不成功的,這引發了更有效的解決方案的問題。
進階方法:資料幀切片
另一種策略涉及採用切片技術來分離資料幀。具體方法如下:
這種利用切片的方法提供了一種更直接、更有效率的方法來為每個參與者創建單獨的DataFrame:
# Create a DataFrame with a 'Names' column data = pd.DataFrame({ 'Names': ['Joe', 'John', 'Jasper', 'Jez'] * 4, 'Ob1': np.random.rand(16), 'Ob2': np.random.rand(16) }) # Extract unique participant names UniqueNames = data['Names'].unique() # Initialize a dictionary to store individual DataFrames DataFrameDict = {elem: pd.DataFrame() for elem in UniqueNames} # Populate the dictionary with individual DataFrames for key in DataFrameDict.keys(): DataFrameDict[key] = data[data['Names'] == key]
訪問單獨的DataFrame
要存取特定參與者的特定DataFrame,只需使用與參與者姓名,如下所示:
DataFrameDict['Joe']
以上是如何透過參與者 ID 有效地將大型 DataFrame 拆分為單獨的 DataFrame?的詳細內容。更多資訊請關注PHP中文網其他相關文章!