HANCOM AI ACAMEMY/학습일지 🗒️

[스나이퍼팩토리] 한컴AI아카데미 12주차

c'est sunny 2025. 4. 17.

 

 

이번 주에는 파이썬 기초 공부하고, Numpy랑 Pandas 데이터프레임 관련해서 연습했다. class 만들고 하는 문제들은 예전에 자바 공부할 때 풀었던 문제랑 비슷해서 어렵지 않게 풀었는데 데이터 프레임은 첨해보는 거라 좀 까다롭게 느껴짐. df[], drop(), iloc, loc 이런 거 사용할 때 괄호랑 대괄호 헷갈려서 머리 터질 뻔했는데 정리하니까 좀 감이 잡히긴 함. 예를 들면 df['컬럼명']처럼 대괄호는 데이터 접근이고, drop()처럼 괄호는 함수 쓸 때 쓰는 거라는 거. 그리고 iloc이랑 loc은 메서드가 아니라 속성이라는 것도 알게 됐음. 조건 걸어서 데이터 뽑아내는 거랑, 새 컬럼 추가하는 것도 데이터베이스 때보다 어렵더랑.. 일단 괄호가 걍 미쳤음. 약간 기초인데도 은근 헷갈리는 부분들이 많아서 최대한 실습하면서 익히는 게 중요할 듯. 예전에 선형대수학 배우긴 했는데 다 까먹어가지고 도움이 될지 의문인데, 아예 처음 보는 것보다는 낫겠지 ㅋ.. 라고 믿는 중. 

 

그리고 Numpy랑 Pandas를 확실히 구분해서 알아둬야 할 필요는 없어 보이는데 구분해서 알면 그 둘을 더 잘 활용할 수 있을 것 같아서 정리해보았다. 

 

NumPy (Numerical Python)

목적 : 고성능 수치 계산 (특히 배열, 행렬 연산)

주요 객체 : ndarray (n차원 배열)

특징

- C 기반이라 빠름

- 수학, 선형대수, 통계 등에 강함

- 브로드캐스팅 기능으로 배열 간 연산을 쉽게 해줌

예시 

- import numpy as np a = np.array([[1, 2], [3, 4]])

- print(a.mean()) # 평균 계산

 

Pandas

목적 : 테이블 형태의 데이터 분석 및 처리

주요 객체 : Series (1차원), DataFrame (2차원, 엑셀처럼 열/행 구조)

특징

- 결측치 처리, 그룹핑, 필터링 등 데이터 분석에 최적

- CSV, Excel 등 외부 파일 불러오기 쉬움

예시

- import pandas as pd df = pd.DataFrame({'name': ['언니', '친구'], 'age': [28, 30]})

- print(df['age'].mean()) # age 열 평균

 

AI 개발에서의 쓰임

- 데이터 전처리: pandas + numpy

- 모델 학습: TensorFlow or PyTorch (내부적으로 numpy도 많이 씀!)

- 결과 분석 & 시각화: pandas + matplotlib

 

 

또 pandas를 배우는 내내 헷갈리는 괄호 개수에 대해서도 정리해보겠다

 

Pandas apply() 쓸 때 괄호 한 개 vs 두 개, 뭐가 다르냐고

문제

def get_sum(x):
    return x.sum()

df["키"].apply(get_sum)

df["키"]는 Series라서 x에 숫자 하나씩 들어오는데, 그 숫자한테 .sum() 하라니까 에러남

 

해결

df[["키"]].apply(get_sum, axis=0)

df[["키"]]처럼 괄호 두 개 써야 DataFrame 형식 유지됨! apply()는 열 전체를 넘겨야 잘 작동하니까, 구조를 잘 맞춰줘야 함.

 

정리

- df["키"]는 1차원 Series,

- df[["키"]]는 2차원 DataFrame

- apply()는 함수에 "덩어리"로 넘겨줘야 하니까 괄호 두 개 필수일 때가 있음

 

 

하놔.. 헷갈려 미치겠넹 수학 싫다

 

 

본 후기는 [한글과컴퓨터x한국생산성본부x스나이퍼팩토리] 한컴 AI 아카데미 (B-log) 리뷰로 작성 되었습니다.

댓글