728x90
반응형
SMALL
1. describe()
- 숫자형 데이터의 집계함수 결과를 데이터프레임 형태로 나타냄
df.describe()
# sum():해당 열에 대한 모든 데이터를 더하여 반환
df['키'].sum()
>>> 2445.3
# count(): 해당 데이터의 개수를 반환
df['이름'].count()
>>> 16
df['키'].count()
>>> 14 # count는 NaN을 포함하지 않고 계산
# mean(): 해당 열에 대한 평균값을 계산하여 반환
df['키'].mean()
>>> 14
# max(): 해당 열에 대하여 최대값을 반환
df['키'].max()
>>> 183.0
# min(): 해당 열에 대하여 최소값을 반환
df['키'].min()
>>> 160.0
# var(): 분산, 데이터가 평균으로부터 얼마나 떨어져 있는지 정도
# (데이터 - 평균)**2를 모두 더한 값 / 데이터의 개수
df['키'].var()
>>> 49.08708791208794
# std(): 표준편차: 분산에 루트를 씌운 값
df['키'].std()
>>> 7.0062178036432705
2. 그룹으로 묶기, groupby()
# 데이터 확인
df
# groupby: 데이터를 그룹으로 묶어 분석할 때 사용, 중복데이터가 있는 컬럼으로 그룹을 맺는 것이 일반적
df.groupby('소속사')
>>> <pandas.core.groupby.generic.DataFrameGroupBy object at 0x7f2aa56f8e20> # 소속사로 그룹화된 객체가 생성됨
df.groupby('소속사').count() # 각 소속사가 index가 되어 coulumn별로 count됨
df.groupby('소속사').mean() # 평균을 계산할 수 있는 column만 계산해서 나옴
df.groupby('소속사').sum()
df.groupby('성별').mean() # 성별로 그룹을 맺어 mean()을 계산할 수 있는 컬럼만 나옴
df.groupby('성별').count() # 성별로 그룹을 맺고 각 그룹에 대한 count(), NaN값 제외
# 혈액형별로 그룹을 맺어서 키의 평균값을 확인, 보고자하는 컬럼을 groupby()뒤에 작성
df.groupby('혈액형')['키'].mean()
# 혈액형별로 그룹을 맺고 성별로 또 그룹을 나눈 후, 키의 평균값을 확인
df.groupby(['혈액형','성별'])['키'].mean()
3. 중복값 제거하기, drop_duplicates()
- 혈액형, 소속사 등 중복된 데이터를 가진 컬럼에 대해 중복값을 제거함
df['혈액형']
df['혈액형'].drop_duplicates()
df['혈액형'].drop_duplicates(keep='last') # 마지막 데이터
3-1. 특정 열에 중복 데이터의 발생 횟수 (개수) 알아보기
# value_counts(): 열에 각 값에 대한 발생 횟수(데이터의 개수)를 반환
df['혈액형'].value_counts()
df['그룹'].value_counts() # 그룹이 NaN인 데이터는 생략됨
df['그룹'].value_counts(dropna=False) # 그룹이 NaN인 데이터까지 출력
728x90
반응형
LIST