전체 글 60

판다스(Pandas) 완벽 정리 - 치트시트

import pandas as pdimport numpy as np📊 1. 기본 데이터 구조Series vs DataFrame특성 Series DataFrame차원1차원2차원구조단일 열여러 열의 집합인덱스1개행 인덱스 + 열 이름비유리스트, 벡터엑셀 시트, 테이블관계-여러 Series의 모음Series 생성# 리스트로 생성s = pd.Series([1, 2, 3, 4, 5])# 딕셔너리로 생성s = pd.Series({'a': 1, 'b': 2, 'c': 3})# 인덱스와 이름 지정s = pd.Series([1, 2, 3], index=['a', 'b', 'c'], name='숫자')# NumPy 배열로s = pd.Series(np.array([1, 2, 3]))DataFrame 생성# 딕셔너리로 생성..

카테고리 없음 2025.10.23

판다스 병합(Merge)과 연결(Concat)

📚 병합(Merge)이란?정의**병합(Merge)**은 두 개의 데이터를 **특정 기준(키)**을 가지고 하나로 통합하는 작업입니다.SQL의 JOIN과 동일한 개념공통 열(키)을 기준으로 결합관계형 데이터베이스의 핵심 기능🔄 1. 내부 조인 (Inner Join)개념교집합 개념으로, 양쪽 테이블 모두에 존재하는 키만 병합import pandas as pdimport numpy as np# 샘플 데이터 생성df_left = pd.DataFrame({ 'subject_id': ['S1', 'S2', 'S3', 'S4'], 'subject_name': ['Math', 'English', 'Science', 'History']})df_right = pd.DataFrame({ 'subject_..

판다스 그룹화된 상태 - Aggregation, Transform, Filter

📚 그룹화된 상태란?정의**그룹화된 상태(Grouped State)**는 groupby()를 실행했지만 집계 함수를 적용하지 않은 중간 상태입니다.Split 단계만 완료된 상태아직 Apply나 Combine이 되지 않음이 상태에서 다양한 조작 가능import pandas as pdimport numpy as np# 실습 데이터df = pd.DataFrame({ 'Team': ['Devils', 'Devils', 'Kings', 'Kings', 'Riders', 'Riders', 'Devils', 'Kings', 'Riders'], 'Year': [2014, 2015, 2014, 2015, 2014, 2015, 2016, 2016, 2017], ..

판다스 Groupby - 그룹별 집계

📚 Groupby란?정의Groupby는 데이터를 특정 기준으로 그룹화하여 각 그룹별로 통계를 계산하는 기능입니다.SQL의 GROUP BY와 유사엑셀의 피벗 테이블과 비슷같은 범주의 데이터끼리 모아서 통계 계산Split-Apply-Combine 원리import pandas as pdimport numpy as npprint("=== Split-Apply-Combine 과정 ===")print("""1. Split (분할) └─ 같은 종류의 데이터끼리 나누기 └─ 기준: 키(Key) 값 2. Apply (적용) └─ 나누어진 각 그룹에 연산 적용 └─ 예: sum, mean, count 등 3. Combine (결합) └─ 각 그룹의 결과를 하나로 합치기 └─ 최종 결과 반환"..

판다스 데이터 추출과 조작

📊 실습용 데이터 준비import pandas as pdimport numpy as np# 실습용 학생 데이터 생성students = pd.DataFrame({ '이름': ['김철수', '이영희', '박민수', '최지영', '정동훈', '강서연'], '성별': ['남', '여', '남', '여', '남', '여'], '나이': [25, 30, 35, 28, 32, 27], '학년': [1, 2, 3, 2, 3, 1], '국어': [85, 90, 78, 92, 88, 95], '영어': [88, 95, 82, 89, 91, 93], '수학': [90, 87, 85, 94, 89, 91]})print("=== 실습 데이터 ===")print(students)print(..

판다스(Pandas)란?

📚 판다스(Pandas)란?정의Pandas는 데이터 분석을 위한 파이썬 라이브러리로, 엑셀의 스프레드시트와 같은 표 형태의 데이터를 쉽게 처리할 수 있습니다.주요 특징import pandas as pdimport numpy as npprint(f"Pandas 버전: {pd.__version__}")1. 고성능 데이터 처리NumPy 기반: 빠른 배열 연산 활용효율적인 메모리 사용: 대용량 데이터 처리 가능벡터화 연산: 반복문 없이 빠른 계산2. 직관적인 데이터 구조# 엑셀과 유사한 구조""" 이름 나이 도시0 김철수 25 서울1 이영희 30 부산2 박민수 35 대구"""3. 강력한 데이터 조작 기능데이터 필터링, 정렬, 그룹화결측값 처리데이터 병합 및 ..

넘파이 함수 완벽 정리 - 치트시트

🎨 배열 생성 함수함수 설명 예시 결과np.array()리스트/튜플로 배열 생성np.array([1,2,3])[1 2 3]np.arange()범위 배열 생성np.arange(0, 10, 2)[0 2 4 6 8]np.linspace()균등 간격 배열np.linspace(0, 1, 5)[0. 0.25 0.5 0.75 1.]np.zeros()0으로 채운 배열np.zeros((2,3))[[0. 0. 0.] [0. 0. 0.]]np.ones()1로 채운 배열np.ones((2,2))[[1. 1.] [1. 1.]]np.full()특정 값으로 채움np.full((2,2), 7)[[7 7] [7 7]]np.empty()초기화 안 된 배열np.empty((2,2))랜덤값np.eye()단위 행렬np.eye(3)3x3 단..

넘파이 연산 함수와 브로드캐스팅

📊 연산 함수 (Aggregation Functions)1. 기본 통계 함수import numpy as np# 샘플 데이터 생성data = np.array([10, 20, 30, 40, 50])print("=== 기본 통계 함수 ===")print(f"데이터: {data}")print(f"합계 (sum): {np.sum(data)}")print(f"평균 (mean): {np.mean(data)}")print(f"중앙값 (median): {np.median(data)}")print(f"표준편차 (std): {np.std(data)}")print(f"분산 (var): {np.var(data)}")print(f"최솟값 (min): {np.min(data)}")print(f"최댓값 (max): {np.max(..

인덱싱/슬라이싱, 배열 생성

📍 인덱싱 (Indexing)인덱싱이란?배열의 특정 위치에 있는 값에 접근하기 위해 오프셋(offset) 또는 인덱스를 사용하는 것입니다.1. 1차원 배열 인덱싱import numpy as np# 1차원 배열 생성arr = np.array([10, 20, 30, 40, 50])print("=== 1차원 배열 인덱싱 ===")print(f"배열: {arr}")print(f"첫 번째 원소 (인덱스 0): {arr[0]}")print(f"세 번째 원소 (인덱스 2): {arr[2]}")print(f"마지막 원소 (인덱스 -1): {arr[-1]}")print(f"끝에서 두 번째 (인덱스 -2): {arr[-2]}")# 값 수정arr[0] = 100print(f"\n수정 후: {arr}")출력:=== 1차원 ..

넘파이 배열

📦 넘파이 배열의 데이터 구조메모리 블록과 배열의 관계import numpy as np# 파이썬 리스트: 비연속적 메모리python_list = [1, 2, 3, 4, 5]# 메모리: [주소1] -> 1, [주소2] -> 2, [주소3] -> 3 (분산됨)# NumPy 배열: 연속적 메모리 블록numpy_array = np.array([1, 2, 3, 4, 5])# 메모리: [시작주소] 1 2 3 4 5 (연속됨)print("배열 정보:")print(f"데이터 주소: {numpy_array.data}")print(f"메모리 크기: {numpy_array.nbytes} bytes")print(f"원소당 크기: {numpy_array.itemsize} bytes")왜 연속 메모리가 중요한가?✅ CPU 캐시..