2025/4/21~2025/4/25
9주차 기록
21일, 22일, 24일은 개인일정으로 결석했다
일주일에 두번만 수업하니 너무 좋았다...ㅎㅎ
일도 얼른 주 2일제를 했으면 좋겠다.
네? 그러면 회사는 어떻게 운영하냐고요?
그건 제가 알바가 아닙니다.
사측이세요?
아니면 그냥 주2일제 무조건 동의하세요
[수강한 강의 내용]
- SQL 실무 적용 실습
- 데이터 분석가가 되기 위한 준비 SQL 코딩테스트
- 프로젝트를 통한 SQL 실력 완성하기
그렇다.
새로운 프로젝트, SQL 플젝 주간이 시작된 것이다.
피어세션이 목요일에 진행되었기에
팀원들은 이미 서로 인사를 나눈 상황이고
나만 금요일에 처음 인사했다.
다들 좋은 분들인 것 같아서 신난다
샌프란시스코 범죄 데이터를 가지고
데이터 분석을 해야하는데
파이썬으로 분석했을때랑 SQL로 분석했을때랑
비슷하면서도 달라서
파이썬 쥬피터로 하고있다
여기서 드는 궁금증...
파이썬이랑 SQL 중 어떤 목적의 데이터 분석일때 더 활용도가 높을까?
지금의 나는 파이썬이 더 쉽게 느껴진다.
결과를 기록해가면서 할 수 있어서 그런걸까?
SQL은 결과창이 하나밖에 없어서 이전 기록을 보기 힘들다.
그럼에도 SQL이 많이 사용되는건 그만한 장점이 있기 때문이 아닐까?
근데 그 장점을 아직 난 모르겠다.
GPT한테 물어봐야지
답변 기록:
파이썬이 더 편하게 느껴지는 건 자연스러운 현상임
파이썬은 코드 흐름 따라가면서 중간결과 저장하고, 기록하고, 시각화까지 가능함
Jupyter Notebook 같은 툴 쓰면 결과를 계속 쌓아가면서 확인 가능함
반면에 SQL은 기본적으로 "필요한 데이터 뽑기"에 최적화된 언어임
한 번 쿼리 날리고 결과 확인하는 식이라,
흐름을 이어가기 어렵게 느껴질 수 있음
그래도 SQL이 실무에서 많이 쓰이는 이유!
대량 데이터 처리에 강함 (수백만 건 데이터도 빠르게 추출 가능)
필요한 것만 정확하게 뽑아낼 수 있음 (조건 검색, 그룹핑, 조인 등)
서버단에서 데이터 처리하기 때문에 속도 빠름
회사에서는 SQL 능력 기본으로 요구하는 경우 많음
요약하면
데이터 "탐색하고 분석"할 땐 파이썬
데이터 "추출하고 필터링"할 땐 SQL
SQL로 데이터 뽑고, 파이썬으로 분석하는 조합이 가장 이상적임
SQL 결과 하나만 볼 수 있어서 답답하다면,
DBeaver, DataGrip 같은 툴 추천.
이런 툴 쓰면 결과 여러 개 띄워놓고 비교도 가능
>> 추가 궁금증. 파이썬에도 그룹바이가 있지않나?
맞음. 파이썬(pandas) 그룹핑 기능 있음.
- groupby() 메서드 사용
- 집계함수(sum(), mean(), count(), agg()) 붙여서 그룹별 계산 가능
- 문법 예시:
-
import pandas as pd
df = pd.DataFrame({
'team': ['A', 'A', 'B', 'B', 'C'],
'score': [10, 20, 10, 30, 40]
})
grouped = df.groupby('team').sum()
print(grouped)
SQL 그룹핑
- GROUP BY 절 사용
- 집계함수(SUM(), AVG(), COUNT(), MAX(), MIN())로 그룹별 계산
- 문법 예시:
-
SELECT team, SUM(score)
FROM table
GROUP BY team;
차이점은 이거임
- SQL은 "서버단에서" 데이터 덩어리 정리 → 빠름
- 파이썬은 "메모리 안"에 데이터를 불러와서 정리 → 유연하고 추가 가공 쉬움
둘 다 그룹핑 가능하지만,
어디서 어느 시점에서 다루느냐에 따라 선택하는 거임
요약:
파이썬에도 그룹핑 있음. 심지어 더 자유롭게 다룰 수 있음.
단, 데이터량 많아지면 SQL쪽이 훨씬 빠르고 안정적임.