Cloud & Platform
Python Data Analysis 정리
Python Data Analysis 정리 학습 내용을 정리한 백필 노트입니다.
이 글은 2025년 학습 기록을 블로그 형식으로 정리한 백필 노트입니다.
1. 실습 환경
- 프로젝트 폴더 생성 (Documents/project/code, data 디렉토리 구분).
2. Numpy 기초
- 배열 생성 및 특징
- ndarray 생성, 차원 확인, shape 변경, 벡터·행렬 연산 지원.
- 배열 자료형은 자동 통일 (정수 → 실수 → 문자열).
- 배열 연산
- 산술 연산과 브로드캐스팅, 결합(row_stack, column_stack, concatenate).
- 분할(split, vsplit, hsplit), 재구조화(reshape, flatten, ravel).
- 인덱싱/슬라이싱
- 정수 인덱싱, 슬라이싱(slice), 팬시 인덱싱, 불리언 인덱싱 모두 지원.
- 수학 함수
- 평균, 분산, 표준편차, 내적, 거듭제곱, 로그, 절댓값 등.
- 무작위값 추출
- np.random.rand, randint, choice, seed 설정으로 재현성 확보.
- 로또 번호 추출 예시.
3. Pandas 기초
- 자료 구조
- Series (1차원), DataFrame (2차원), Panel (3차원).
- 데이터프레임
- 행(Row)/열(Column) 구조, 자료형은 열마다 다를 수 있음.
- index, columns, values, info() 활용.
- 데이터 척도
- 명목척도, 서열척도, 등간척도, 비율척도 설명.
- Series
- 생성: 리스트, 배열, 딕셔너리 등으로 가능.
- 인덱스: 정수, 문자열, 실수 가능. 중복 허용.
- 인덱싱: 정수/라벨 인덱싱, 슬라이싱, 팬시·불리언 인덱싱.
- iloc(정수 위치), loc(라벨 이름) 구분.
- 원소 추가/변경/삭제: loc 할당, drop 사용.
- 자료형 변환: astype 활용.
- 논리 연산: &, |, ^, ~ 비트연산자 활용.
- 얕은 복사 vs 깊은 복사 비교.
- DataFrame
- 생성: 리스트, 딕셔너리, 딕셔너리 리스트로 생성 가능.
- 인덱스/컬럼명 변경 가능.
- 인덱싱: iloc(정수 기반), loc(라벨 기반).
4. 데이터 처리/분석 활용
-
데이터 입출력
CSV, Excel 등 다양한 포맷 입출력 (pandas read_csv, to_csv 등).
-
데이터 전처리
결측치 처리, 자료형 변환, 필터링, 병합/조인, 그룹화.
-
데이터 탐색
describe(), value_counts(), unique() 등을 통한 탐색.
-
데이터 시각화
- pandas plot(), matplotlib 활용.
- 막대그래프, 선그래프, 히스토그램 등 기본 시각화 기능.
5. 비교/활용 사례
- Excel vs Python
- Excel 장점: 프로그래밍 지식 불필요, 시각적 편리성, Undo 가능.
- Excel 단점: 대규모 데이터 처리 어려움, 자동화 제한.
- Python 장점: 대규모 데이터·머신러닝 가능, 자동화, 협업 버전 관리 용이.
- Python 단점: 초기 환경 설정 필요, 프로그래밍 지식 요구.