본문 바로가기
Python_Wiki/Python_Library

pandas: crosstab / 범주형 데이터 비교 분석

by yj-data 2025. 7. 14.

pd.crosstab(index=행, columns=열, margins=True/False, normalize=True/False)

  • margins: 행의 합이나 열의합을 구할건지 여부
  • normalize: 비율을 구할건지 여부
#pd.crosstab(행,열)
pd.crosstab(df['Sex'], df['Survived'])

#.normalize
#normalize = 'all': 전체 합이 100%
#normalize = 'index': 행별 합이 100%
#normalize = 'columns': 열별 합이 100%
pd.crosstab(df['Sex'], df['Survived'], normalize='all')

 

 

pd.crosstab(df['Sex'], df['Survived'], normalize='all', margins=True)

 

다중 인덱스, 다중 컬럼도 구해보자

pd.crosstab(index=[df['Sex'], df['Pclass']], columns=[df['Survived'], df['Embarked']], normalize='all')