DataFrame 결합 : concat(), merge()
DataFrame을 결합하는 방법으로는 `pd.concat()`과 `pd.merge()` 2가지가 있습니다.
1) pd.concat()
concat 함수를 사용하면 단순히 데이터를 연결할 수 있습니다.
- 기본 사용 방법
- `pd.concat([df1, df2])` : DataFrame df1과 df2를 이어 붙이기
- 옵션
- axis : 축 (0 : 세로로[default], 1 : 가로로)
- join : 합치는 방법 : (outer : 합집합[default], inner : 교집합)
# 기본 사용
df_concat = pd.concat([df1, df2])
# 세로로 합치기 (default)
pd.concat([df1, df2], axis = 0)
# 가로로 합치기
pd.concat([df1, df2], axis = 1)
# 가로로 교집합
pd.concat([df1, df2], axis = 1, join = 'inner')
2) pd.merge()
merge 함수는 DataFrame을 각 데이터에 존재하는 고유한 key 값을 기준으로 병합할 수 있습니다.
- 기본 사용 방법
- `pd.merge(df_left, df_right, on=key값)` : on(key값)을 기준으로 병합. 명시하지 않으면 자동으로 잡아줌.
- 옵션
- how : 합치는 방법 (left, right, inner, outer)
- on : 기준으로 사용할 열, key 값
# 기본 사용
df_merge = pd.merge(df_left, df_right)
# on(key값) 명시
df_merge = pd.merge(df_left, df_right, on='movieId')
# how=outer
df_merge = pd.merge(df_left, df_right, how='outer')
정렬 : sort_values()
pandas 라이브러리를 활용하여 데이터를 필요에 맞게 정렬할 수 있습니다.
- 기본사용법
- `df.sort_values(by='정렬 기준이 되는 컬럼')` : 해당 열의 값을 기준으로 오름차순 정렬
- 옵션
- by : 정렬 기준이 되는 컬럼. list 형태로 여러 컬럼 넣을 수 있음.
- ascending : 정렬 방법 (True=오름차순, False=내림차순)
# 기본 사용
df.sort_values(by='movieId')
# 내림차순 정렬
df.sort_values(by='movieId', ascending=False)
# 복합 열 정렬 : 별도로 저장하고, 인덱스 reset
temp = df.sort_values(by=['JobSatisfaction', 'MonthlyIncome'], ascending=[True, False])
temp.reset_index(drop = True)
행 인덱스 초기화 : reset_index()
데이터 프레임의 index를 초기화하여 재배열 할 수 있습니다.
- 기본사용법
- `df.reset_index()` : 인덱스를 다시 0부터 시작하도록 reset. 기존 인덱스가 새로운 컬럼으로 저장됩니다.
- 옵션
- `drop` : True 옵션을 주면 기존 인덱스는 삭제
'IT' 카테고리의 다른 글
[Pandas] 4. 결측치 처리 (0) | 2024.03.27 |
---|---|
[Pandas] 3. DataFrame 조회(필터링), 변경 (0) | 2024.03.27 |
[Pandas] 1. 데이터 탐색 (0) | 2024.03.27 |
[Ubuntu] 우분투 Root 계정 비밀번호 설정 (0) | 2024.02.21 |
[Docker] 컨테이너 사용 방법. docker 명령어 (0) | 2024.02.20 |