일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- 데이터분석
- 중학수학
- JSP/Servlet
- 자바스크립트
- 디버깅
- JSP
- 쇼핑몰홈페이지제작
- JDBC
- 자바스크립트심화
- 순환신경망
- 정보처리기사필기
- rnn
- 개발일기
- 연습문제
- 파이썬
- 타입스크립트심화
- 정보처리기사실기
- 혼공머신
- 자바 실습
- html/css
- 머신러닝
- 스프링프레임워크
- 자바
- 컴퓨터비전
- SQL
- 중학1-1
- ChatGPT
- 딥러닝
- 상속
- 데이터베이스
- Today
- Total
클라이언트/ 서버/ 엔지니어 "게임 개발자"를 향한 매일의 공부일지
Pandas 3 - 데이터 변환 및 데이터 요약하기 본문
데이터를 변환하는 두 번째 학습을 이제 본격적으로 시작해 본다.
어떤 일이든 시작과 끝맺음이 가장 중요하다. 더 하고 싶은 마음이 있더라도 중단하고 다음 일은 진행해야 삶의 균형이 흐트러지지 않는다. 이제 잘 쉬었으니 공부도 다시 시작해야 한다.
이론 4 - 데이터 변환하기 2
지난 수업에서 데이터를 변환했지만 날짜가 숫자로 되어 있어서 알아보기 힘들었다. 이제 요일을 글자로 표시할 수 있게 변환하는 작업을 진행할 단계가 되었다. 단위를 바꾸는 등 데이터 변환은 앞으로도 자주 쓰이는 기능이다.
시리즈 연산은 전체 컬럼에 영향을 주며 계산할 수 있다.
이처럼 변경된 것을 보게 된다. 이러한 연산은 데이터의 단위를 바꾸거나 숫자 계산을 통해 새로운 지표를 나타내는 데 사용한다.
딕셔너리를 놓게 되면 해당 인자들을 넣어준 후 리턴된 값으로 변환한다.
데이터를 요일로 바꾸기 위해 week라는 딕셔너리를 생성한다. df의 요일에 메인 메서드를 적용한다.
컬럼 지정을 생략하여 데이터 전체에 적용할 수도 있다. 괄호 안에 값을 지정해 주는 것은 사용 옵션을 지정해주는 것과 같다.
현재 날씨 정도에는 비, 눈, 눈/비 등의 항목이 별도로 있다. 이 3가지를 합쳐서 눈/비로 통일해 보기로 하자. 변환을 한번 할 때마다 함수를 정의해주어야 한다.
딱 한번 쓰고 사용하지 않을 함수가 많아진다면 코드가 복잡해지게 된다.
이럴 때 lambda 함수를 사용한다. 앞서 사용한 weather 함수를 lambda를 사용하면 이렇게 간단하게 표현된다.
실습 3 - 데이터 변환하기 2
문제 설명
실습해 보기
1. 데이터 불러오기
요일 컬럼이 글자가 아닌 숫자로 기록되어 있는 것을 확인할 수 있다.
2. 열 전체 변환하기 : map()
3. 데이터에 함수 적용하기 : apply()
세 종류의 데이터를 눈/비로 통일하는 함수를 만들었다.
람다 함수는 전에 C#을 공부할 때 책에서 보았던 기억이 난다. 자세한 내용은 기억나지 않지만 이렇게 함수를 축약해 주는 기능이었다.
4. 마지막 작업 및 채점
람다 함수를 사용하는 건 조금 어려웠지만 이렇게 풀어보았다.
이론 5 - 데이터 요약하기
데이터 요약에서는 데이터를 원하는 방식으로 요약하고 묶는 방식에 대해서 배우게 된다.
데이터 컬럼별로 평균값이 나오며 어른 값의 평균값도 계산되어 반환되는 것을 볼 수 있다. 하지만 이러한 통계값은 숫자로 이루어진 컬럼에만 적용된다.
이때는 소괄호 안에 대괄호를 씌워서 리스트 형태로 넣어주면 된다.
groupby()를 잘 사용하면 데이터가 어떤 특성과 동향을 갖고 있는지 파악할 수 있다.
실습 4 - 데이터 요약하기
문제 설명
직접 실습해 보기
1. 데이터 불러오기
2. 데이터 통계값 확인
3. 직계함수 사용해 미세먼지가 가장 높은 날 구하기
이렇게 미세먼지 최대값을 불러와서 수치를 저장했다.
4. 데이터 전체 통계
5. 데이터 그룹화 : groupby()
날씨를 기준으로 총계 데이터를 묶을 수 있다.
날씨와 함께 공휴일이라는 다른 그룹으로도 하나 더 묶어볼 수 있다.
이렇게 사용하면 날씨와 공휴일에 따른 어른과 어린이 입장객수의 차이를 구분할 수 있다.
5. 그룹화 묶기 : 목요일이면서 공휴일인 날짜의 어른 입장객수의 최대값
6. 채점
학습을 마치고
데이터를 변환하는 두 번째 방법에 대해서 학습해 보았다. 첫 번째 방법에서는 날짜가 숫자로 표시되는 문제가 있어서, 이것을 map() 함수로 담아서 열 전체를 변환하고 함수를 적용하는 apply()도 사용해 보았다. 그리고 이어서 데이터를 요약하는 방법에 대해서도 학습했다.
직접 실습을 해보니 무슨 말인지 이해할 수 있었다. 다만 공부를 하다가 너무 졸려서 1시간이나 낮잠을 자고 말았다. 일어나기 정말 싫었지만 다시 일어나 공부를 시작하니 할만했다.
오후에 많이 쉰만큼 힘을 내서 공부를 진행해 볼 것이다. 난 왜 이렇게 밥만 먹으면 잠이 몰려오는지 알 수가 없다. 특히 식후에 과일을 먹으면 이런 증세가 더 심해지는 것 같다. 점심 때는 가능하면 과일을 먹지 말아야겠다.
다음 포스트에서는 데이터를 추출하고 정제하는 방법에 대해서 학습해 보겠다.
'인공지능 > Numpy & Pandas' 카테고리의 다른 글
Pandas 5 - 데이터 정제하기 (0) | 2024.07.31 |
---|---|
Pandas 4 - 데이터 추출하기 (0) | 2024.07.31 |
Pandas 2 - 데이터 변환하기 (0) | 2024.07.31 |
Pandas 1 - Pandas 라이브러리 소개 (0) | 2024.07.31 |
Numpy 6 - 집계함수 & 마스킹 연산 (0) | 2024.07.31 |