데이터 통합하기
- 행 단위 통합하기
pd.concat()
: axis=0으로 데이터프레임끼리 행 단위 통합하기- ignore_index=True : 데이터를 행으로 추가할 때 인덱스 번호를 순차적으로 증가시킴
# 행 단위 데이터 통합하기
pd.concat([sample_1, sample_2], ignore_index=True)
- 열 단위 통합하기
pd.merge()
: 두 데이터프레임을 각 데이터에 존재하는 고유값을 기준으로 병합- left : 왼쪽 메모리 영역 데이터
- right : 오른쪽 메모리 영역 데이터
- how : 어떻게 합칠 것인지 결정
- inner : 같은 것에 대해서만
- outer : 왼쪽, 오른쪽 데이터 모두에 대해서 (같은 값이 없으면 NaN)
- left : 왼쪽 데이터 모두에 대해서 (같은 값이 없으면 NaN)
- right : 오른쪽 데이터 모두에 대해서 (같은 값이 없으면 NaN)
- left_on : 왼쪽 데이터에서 오른쪽 데이터와 매핑할 컬럼
- right_on : 오른쪽 데이터에서 왼쪽 데이터와 매핑할 컬럼
# 열 단위 데이터 통합하기 - merge() 사용
pd.merge(left = sample,
right = code_master,
how = "left",
left_on = "국적코드",
right_on = "국적코드")
pd.concat()
: axis=1으로 데이터프레임끼리 열 단위 통합하기
# 열 단위 데이터 통합하기 - concat() 사용
pd.concat([df_1, df_2], axis=1)
- 인덱스 재정렬하기
reset_index()
: 인덱스 번호를 순차적으로 다시 생성하기- drop=True : 기존의 인덱스를 컬럼으로 사용하지 않을 때
데이터 저장하기
to_excel()
: 엑셀 파일로 저장하는 함수to_csv()
: csv 파일로 저장하는 함수to_json()
: json 파일로 저장하는 함수- index = False : 데이터프레임의 인덱스 번호는 제외하기
- encoding="euc-kr" 또는 "utf-8" : 한글 데이터 있을 때 사용
# 데이터 파일 엑셀로 저장하기
df.to_excel("./files/sample.xlsx", index = False)
# 데이터 파일 csv로 저장하기
df.to_csv("./data/sample_data.csv", encoding="euc-kr", index=False)
데이터 타입 변환하기
- 데이터 확인하기
type()
: 변수 원형의 타입을 확인dtypes
: 데이터프레임의 데이터 타입 확인
index
: 데이터프레임의 인덱스 확인columns
: 데이터프레임의 컬럼명 확인values
: 데이터프레임의 행 데이터 확인
count()
: 데이터프레임 내에 컬럼의 데이터 갯수 확인하기
- 데이터프레임 타입 변환
astype()
: 데이터프레임의 타입 변환하기
### 데이터프레임 타입 변환하기
# 필요한 경우 컬럼 하나씩 타입 변환
tips["smoker"].astype(str)
# 전체를 바꾸는 경우는 거의 없음
tips.astype(str)