두 개의 데이터 프레임이 있고 교차표의 결과는 다음과 같다고 가정합니다.
Age 12 13 14 Mark 80 90 85 Id 1 1 0 0 2 0 1 0 3 1 0 0 4 0 1 0 5 0 0 1
해결책
이 문제를 해결하기 위해 다음 단계를 따릅니다. -
-
두 개의 데이터 프레임 정의
-
index 내부의 df.crosstab() 함수를 'Id'로, 컬럼을 'Age'와 'Mark'로 적용합니다. 아래에 정의되어 있습니다.
pd.crosstab(index=df['Id'],columns=[df['Age'],df1['Mark']])
예시
import pandas as pd df = pd.DataFrame({'Id':[1,2,3,4,5],'Age':[12,13,12,13,14]}) df1 = pd.DataFrame({'Mark':[80,90,80,90,85]}) print(pd.crosstab(index=df['Id'],columns=[df['Age'],df1['Mark']]))
출력
Age 12 13 14 Mark 80 90 85 Id 1 1 0 0 2 0 1 0 3 1 0 0 4 0 1 0 5 0 0 1