작성일: 24.11.19(화)
강사님: 조대연
Pandas 기본 문법
- Python Data Analysis Library의 줄임말
- 데이터 조작과 분석을 위한 파이썬 라이브러리
- 엑셀의 기능을 프로그래밍으로 구현한 것이라고 이해하면 쉬움
DataFrame
- 2차원 테이블 구조
- 엑셀 시트와 유사한 형태
- Series들의 집합이라고 볼 수 있음
df = pd.DataFrame({
'이름': ['김씨', '박', '이씨'],
'나이': [25, 28, 32],
'직업': ['학생', '회사원', '교사']
})
Series 개념
- Pandas의 기본 1차원 데이터 구조
- NumPy array와 유사하지만, 인덱스 레이블을 가짐
- 동일한 데이터 타입의 값들을 담는 1차원 배열
리스트 생성
import pandas as pd
# 기본 생성
s1 = pd.Series([1, 2, 3, 4, 5])
# 인덱스 지정
s2 = pd.Series([1, 2, 3, 4, 5],
index=['a', 'b', 'c', 'd', 'e'])
# 딕셔너리의 key가 인덱스가 됨
dict_data = {'a': 1, 'b': 2, 'c': 3}
s3 = pd.Series(dict_data)
# 스칼라 값으로 생성
# 동일한 값으로 Series 생성
s4 = pd.Series(5, index=['a', 'b', 'c'])
# 결과: a 5
# b 5
# c 5
Series 속성
s = pd.Series([1, 2, 3, 4, 5],
index=['a', 'b', 'c', 'd', 'e'])
# 값 배열
print(s.values) # [1 2 3 4 5]
# 인덱스
print(s.index) # ['a', 'b', 'c', 'd', 'e']
# 크기
print(s.size) # 5
# 차원
print(s.ndim) # 1
# 데이터 타입
print(s.dtype) # int64
Series 연산
# 산술 연산
# 사칙연산
print(s + 2) # 모든 값에 2를 더함
print(s * 2) # 모든 값에 2를 곱함
# Series 간 연산
s2 = pd.Series([1, 2, 3, 4, 5])
print(s + s2) # 같은 위치의 값끼리 더함
# 통계연산
print(s.mean()) # 평균
print(s.sum()) # 합계
print(s.std()) # 표준편차
print(s.min()) # 최소값
print(s.max()) # 최대값
# 결측치 처리
# 결측치 확인
print(s.isnull())
# 결측치 제거
print(s.dropna())
# 결측치 채우기
print(s.fillna(0))
시계열 데이터 분석
# 날짜 인덱스를 가진 Series 생성
dates = pd.date_range('20240101', periods=5)
ts = pd.Series([1, 2, 3, 4, 5], index=dates)
범주형 데이터 처리
# 범주형 데이터 생성
grades = pd.Series(['A', 'B', 'A', 'C', 'B'])
print(grades.value_counts()) # 각 값의 빈도 계산
데이터변환
# 데이터 타입 변환
s = s.astype('float64')
# 문자열 메소드 사용
names = pd.Series(['john', 'JANE', 'Bob'])
print(names.str.upper())
'프로그래밍 > AI' 카테고리의 다른 글
아나콘다란? (1) | 2024.11.22 |
---|---|
서울시 범죄현황 통계자료 분석 및 시각화 (0) | 2024.11.19 |
머신러닝을 위한 데이터 - 종류, 수집, 활용 (2) | 2024.11.19 |
python 기초 문법 (3) | 2024.11.18 |
마인드셋 (0) | 2024.11.16 |