본문 바로가기
TIL

내배캠 TIL 24일차

by ColorConeHead 2024. 1. 22.
반응형

1. 팀 프로젝트

'금융' 도메인을 중심으로 한 팀이 편성되었다.

다들 금융보다는 스포츠를 좋아하시는 듯 하다.

관심사가 비슷하니 추후에 프로젝트를 진행하는 것 또한

수월할 듯 하다.

 

 

 

 

2. 데이터 전처리/시각화

1) 전처리

(1) concat
import pandas as pd

result = pd.concat([데이터프레임들], axis=0(상하, 디폴트))
result = pd.concat([데이터프레임들], axis=1(좌우))​


이어 붙이는 메서드.

데이터 프레임 간의 행,열 갯수가 일치하지 않을 경우의
빈 값들은 결측치(NaN)으로 처리된다.

그럴 경우 dropna()나 fillna()를 통한 전처리 필요.

중복되는 row가 생겨 처리할 경우.
drop_duplicates() 사용.




(2) merge

result = pd.merge(left_df, right_df, on=중심칼럼, how='left')		
# left join

result = pd.merge(left_df, right_df, on=중심칼럼, how='inner')		
# inner join

result = pd.merge(left_df, right_df, on=중심칼럼, how='outer')		
# full outer join

result = pd.merge(left_df, right_df, on=중심칼럼, how='right')		
# right join


SQL에서 join과 같은 메서드

동반되는 결측치는 위와 같은 방법으로 처리.

 

 

2) 시각화

다양한 메서드를 한꺼번에 정리하였다.
import matplotlib.pyplot as plt
import numpy as np

# 다수의 그래프를 그릴 때 전체 그림판 좌표 정의하기
# 3*3=9, 총 9개의 스팟을 정할 수 있음
grid = plt.GridSpec(3, 3)					
			
# 이후 그림판 크기는 9*9 사이즈
plt.figure(figsize=(9, 9))
					
# 그림판에서 (0,0)좌표, 좌상단에 그림
plt.subplot(grid[0, 0])

# 나머지 인수는 plot마다 다름
plt.plot(x, y, color='green', linestyle='--', marker='o')	
plt.title('plot')

# (0, 2) 위치 첫 행의 3번째. 우측 상단에 위치
plt.subplot(grid[0, 2])						
plt.bar(x, y)			
plt.title('bar')
plt.xlabel('x')
plt.ylabel('y')

# (2,0) 좌측 하단
plt.subplot(grid[2, 0])		

# 표준정규분포에서 난수 1000개 생성
z = np.random.randn(1000)	

# bins = 계급구간수
plt.hist(z, bins=30)						
plt.title('hist')

# (2, 1:) 최하단 1열 2열 이와같이 슬라이싱도 된다
plt.subplot(grid[2, 1:])				

# 랜덤시드를 고정하면 같은 난수를 계속 생성가능
np.random.seed(10)						

# 컴프리헨션 표준편차가 1, 2, 3 일때의 난수 100개씩 생성
data = [np.random.normal(0, std, 100) for std in range(1, 4)]	
plt.boxplot(data)
plt.title('box')

그래프를 하나만 그린다면 plt.figure(figsize=(x, x))를 통해
바로 설정 가능하다.

하나의 피규어에 다수를 그릴 때는
그리드를 써서 조정 가능하다.

참고 블로그 https://bluemumin.github.io/python/2023/01/15/python-matplotlib_%EA%B8%B0%EC%B4%88/
반응형

'TIL' 카테고리의 다른 글

내배캠 TIL 26일차  (1) 2024.01.24
내배캠 TIL 25일차  (1) 2024.01.23
내배캠 TIL 23일차  (0) 2024.01.19
내배캠 TIL 22일차  (0) 2024.01.18
내배캠 TIL 21일차  (0) 2024.01.17