1. 라이브러리 로드하고 한글폰트 설정하기 (선명하게 나타내기)
%config InlineBackend.figure_format = 'retina'
2. 데이터셋 소개와 로드하기
- df.info() : 정보
- df.columns() : 컬럼명
- df.dtypes() : 컬럼 타입
3. 로드된 데이터를 보고 요약, 집계하기
- True이면 결측치 : df.isnull() 또는 df.isna()
- 결측치의 합 : df.isnull().sum() 또는 df.isna().sum()
- df['컬럼명'] : 그냥 나열
- df[['컬럼명']] : 데이터 프레임 형식으로 출력
- df['컬럼명'].value_counts() : 컬럼의 데이터별 갯수 합
4. groupby / pivot_table
1) 가입자일련번호 기준으로 성별코드 갯수 세기
- df.groupby(['성별코드'])['가입자일련번호'].count()
- df.pivot_table(index = '성별코드', values = '가입자일련번호', aggfunc = 'count')
2) 성별코드와 음주여부를 감마지티피 기준으로 표현하기
- df.groupby(['성별코드','음주여부'])['감마지티피'].agg(['count','mean','median')])
- df.pivot_table(index = ['성별코드', '음주여부'], values = '감마지티피', aggfunc = 'describe')
5. 히스토그램으로 전체 수치 데이터를 한번에 시각화하기
- df.hist(figsize = (12, 12)) : 전체 데이터 프레임 히스토그램 시각화
- df.iloc[:, :12].hist(figsize = (12, 12)) : 12개만 히스토그램 시각화
6. countplot / barplot
- 음주여부 갯수 : sns.countplot(x = '음주여부', data = df)
- 연령대에 따른 음주여부 : sns.countplot(data = df, x = '연령대', hue = '음주여부')
- 연령대별로 음주여부 먼저 나누고, 그 다음 총콜레스테롤 수치 시각화 : sns.barplot(data = df, x = '연령대', y = '총콜레스테롤', hue = '음주여부')
7. lineplot / pointplot
- ci = 'sd' : 표준편차
- sns.lineplot(data = df, x = '연령대', y = '체중', hue = '성별코드', ci = 'sd')
- sns.pointplot(data = df, x = '연령대', y = '체중', hue = '성별코드', ci = 'sd')
8. boxplot / violinplot : 데이터를 좀 더 자세히 표현
- sns.boxplot(data = df, x = '신장', y = '체중', hue = '성별코드')
- sns.violinplot(data = df, x = '신장', y = '체중', hue = '음주여부', split = True)
- sns.swarmplot(data = df_sample, x = '신장', y = '체중', hue = '음주여부')
- sns.lmplot(data = df_sample, x = '연령대', y = '혈색소', hue = '음주여부', col = '성별코드')
9. scatterplot / lmplot : 산점도 (산포도)와 회귀선 상관관계
- sns.scatterplot(data = df_sample, x = 'AST', y = 'ALT', hue = '음주여부')
- sns.lmplot(data = df_sample, x = '신장', y = '체중', hue = '성별코드', col = '음주여부'
10. distplot : 수치형 데이터의 분포 표현
- sns.distplot(df_chol, bins = 10)
- kdeplot
11. 상관관계는 heatmap으로 표현
df_small = df_sample[columns]
df_corr = df_small.corr()
df_corr
# 상관관계 나타내기
plt.figure(figsize = (20, 7))
sns.heatmap(df_corr, annot = True, fmt = '.2f', cmap = 'Blues')
# 상관관계 쌓아서 나타내기
mask = np.triu(np.ones_like(df_corr, dtype = np.bool))
plt.figure(figsize = (20, 7))
sns.heatmap(df_corr, annot = True, fmt = '.2f', cmap = 'Blues', mask = mask)
12. 데이터 저장용량은 텍스트로 저장하는 것에 비해 훨씬 적은 저장용량을 가진다.
13. 데이터베이스에서는 정규화 (관계형 데이터베이스 설계에서 중복 최소화하여 데이터 구조화하는 프로세스)를 통해 데이터를 관리한다.
'Naver Boostcourse > 파이썬으로 시작하는 데이터 사이언스' 카테고리의 다른 글
부스트코스 코칭스터디 4주차 정리 (2022/11/27) (0) | 2023.03.20 |
---|---|
부스트코스 코칭스터디 2주차 정리 (2022/11/13) (0) | 2023.03.20 |
부스트코스 코칭스터디 1주차 정리 (2022/11/06) (0) | 2023.03.20 |