Pandas에서 목록 열이 포함된 DataFrame을 처리하는 것은 어려울 수 있습니다. 별도의 행으로 표시되는 목록 요소입니다. 여기서 .explode() 메서드가 사용됩니다.
Pandas ≥ 0.25
Pandas 버전 0.25 이상의 경우 판도를 바꾸는 것은 .explode( ) 방법. 목록과 같은 열을 별도의 행으로 분해하여 긴 형식에서 넓은 형식으로 변환할 수 있습니다.
import pandas as pd # Sample DataFrame df = pd.DataFrame({ 'trial_num': [1, 2, 3, 1, 2, 3], 'subject': [1, 1, 1, 2, 2, 2], 'samples': [list(np.random.randn(3).round(2)) for i in range(6)] }) # Explode using .explode() exploded_df = df.explode('samples') # Reset index to be monotonically increasing (optional) exploded_df = exploded_df.reset_index(drop=True) print(exploded_df) # Output: # subject trial_num sample # 0 1 1 0.57 # 1 1 1 -0.83 # 2 1 1 1.44 # 3 1 2 -0.01 # 4 1 2 1.13 # 5 1 2 0.36 # 6 1 3 1.18 # 7 2 1 -0.08 # 8 2 1 -4.22 # 9 2 1 -2.05 # 10 2 2 0.72 # 11 2 2 0.79 # 12 2 2 0.53 # 13 2 3 0.4 # 14 2 3 -0.32 # 15 2 3 -0.13
.explode()는 한 번에 하나의 열에서 작동한다는 점에 유의하세요. 혼합 유형(예: 목록 및 스칼라)을 포함하는 열의 경우 .explode()는 현명하게 작동하고 빈 목록과 NaN을 유지합니다.
위 내용은 Pandas\' `.explode()` 메서드는 어떻게 목록 기반 열을 별도의 행으로 변환할 수 있나요?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!