Guts !!
[패스트 캠퍼스 수강 후기] 올인원 패키지: 직장인을 위한 파이썬 데이터 분석 100% 환급 챌린지 33회차 미션 본문
[패스트 캠퍼스 수강 후기] 올인원 패키지: 직장인을 위한 파이썬 데이터 분석 100% 환급 챌린지 33회차 미션
버블스텝 2020. 11. 20. 23:43[ Python 필수 스킬 - Pandas ]
- DataFrame 합치기 : concat 사용
오늘의 포스팅은 어제의 포스팅과는 반대가 되는 합치기 입니다. 데이터 프레임을 합치는 방식은 솔직히 많습니다. List를 시리즈로 변환하고 더해주는 방식도 있으니 말이죠. 그렇지만 오늘은 concat이라는 방식을 이용해서 행을 기준으로 또는 열을 기준으로 합치는 방식을 알아 보겠습니다.
[ DataFrame 합치기 : concat 사용 ]
- Row를 기준으로 붙이기
데이터를 2개 불러오겠습니다. 넘파이는 솔직히 오늘은 필요없지만 습관으로 불러 오게 됬습니다.
오늘 이 두가지 데이터를 이용해서 합치기를 할 것 입니다. 들어가기 전 df_copy() = df.copy()라는 명령어를 이용해서 복사데이터를 하나 만들고 붙이기를 하겠습니다.
pd. concat([붙일데이터, 붙이고 싶은 데이터], sort=False) 인데 row기준으로 합칠 때는 sort = False 옵션을 주어 순서를 유지 되도록 하는 것 입니다. 코드 구문에서 붙일 데이터 = 원본데이터 입니다.
위와 같이 Row를 기준으로 데이터들이 붙여지게 됩니다. 원본데이터의 14번 행 다음으로 붙인 데이터 0번 행이 삽입 된 것을 볼 수 있습니다.
이렇게 Row 인덱스 번호가 따로 주어지지 않은 경우는 번호가 중복되게 되고 그것에 의해 오류를 발생 시킬 수 있습니다. 예를 들어 슬라이싱과 인덱싱을 이용해서 해당 Row의 정보를 얻고 싶다면 어떻게 될까요???
iloc을 이용해서 1번째 행을 가져 오게 됬습니다. 그런데 중복되었던 나중에 나올 같은 1번 행은 나오지 않습니다.
즉, 첫번째 나오는 Row index 번호만이 나오게 됩니다. 이것은 이전에 배웠던 dict에서의 특징과 동일 합니다.
동일한 키값이 있다면 차후에 들어오는 키값에 이전 키값이 불리지 않았습니다.
이번에는 다른 실습을 위해 2가지 객체로 나눠 줍니다.
위와같은 동일한 Row index 번호에 대한 오류를 방지 하기 위해서 reset_index() 라는 함수를 사용하겠습니다.
이 reset_index의 옵션으로는 drop=True를 주었는데 이 옵션을 주어진 것과 주어지지 않은 것을 비교 하겠습니다.
drop = True 로 주었을때 입니다. 아무 문제 없이 잘 정렬 되어 있습니다.
drop 옵션을 주어 지지 않았을때는 컬럼에 index라는 변수가 생기게 되는 것을 볼 수 있습니다.
- Column 를 기준으로 붙이기
컬럼을 기준으로 붙이는 것은 이전 시간에 배웠던 axis 라는 옵션을 이용하면 됩니다.
컬럼기준이기 때문에 역시 "axis = 1" 입니다.
오늘의 포스팅은 여기 까지 입니다. 불금이기 때문에 좀 쉬고 주말에 또 달리겠습니다.
해당 강의 이미지 링크
'FastCampus[직장인] 위한 파이썬(미션)' 카테고리의 다른 글
[패스트 캠퍼스 수강 후기] 올인원 패키지: 직장인을 위한 파이썬 데이터 분석 100% 환급 챌린지 35회차 미션 (0) | 2020.11.22 |
---|---|
[패스트 캠퍼스 수강 후기] 올인원 패키지: 직장인을 위한 파이썬 데이터 분석 100% 환급 챌린지 34회차 미션 (0) | 2020.11.21 |
[패스트 캠퍼스 수강 후기] 올인원 패키지: 직장인을 위한 파이썬 데이터 분석 100% 환급 챌린지 32회차 미션 (0) | 2020.11.19 |
[패스트 캠퍼스 수강 후기] 올인원 패키지: 직장인을 위한 파이썬 데이터 분석 100% 환급 챌린지 31회차 미션 (0) | 2020.11.18 |
[패스트 캠퍼스 수강 후기] 올인원 패키지: 직장인을 위한 파이썬 데이터 분석 100% 환급 챌린지 30회차 미션 (0) | 2020.11.17 |