1. 오늘 학습 목표
- 파이썬 발 담구기
2. 오늘 학습 한 내용
Python
- 숫자형
a = 7
b = 2
a+b # 9
a-b # 5
a*b # 14
a/b # 3.5
a+3*b # 13 (여러 연산을 한 줄에 할 경우 사칙연산의 순서대로!)
(a+3)*b # 20 (소괄호를 이용해서 먼저 계산할 부분을 표시해줄 수 있어요!)
a//b # 3 (몫)
a%b # 1 (나머지)
a**b # 49 (거듭제곱)
- Bool 자료형
4 > 2 # True 크다
5 < 1 # False 작다
6 >= 5 # True 크거나 같다
4 <= 4 # True 작거나 같다
3 == 5 # False 같다
4 != 7 # True 같지 않다
- 문자열
first_name = "Harry"
last_name = "Potter"
first_name + last_name # HarryPotter
first_name + " " + last_name # Harry Potter
a = "3"
b = "5"
a + b # 35
len으로 문자열 길이 구하기
print(len("abcde")) # 5
print(len("Hello, Sparta!")) # 14
print(len("안녕하세요.")) # 6
- 인덱싱
f="abcdefghijklmnopqrstuvwxyz"
f[1] # b 파이썬은 숫자를 0부터 셉니다
- 슬라이싱
f[4:15] # efghijklmno f[4]부터 f[15] 전까지, 총 15-4=11개!
f[8:] # ijklmnopqrstuvwxyz f[8]부터 끝까지, 앞의 8개 빼고!
f[:7] # abcdefg 시작부터 f[7] 전까지, 앞의 7개!
f[:] # abcdefghijklmnopqrstuvwxyz 처음부터 끝까지
- 스플릿
myemail = 'abc@sparta.co'
domain = myemail.split('@')[1].split('.')[0]
print(domain)
Tip. 모든 코딩은 기억할 필요없이 필요한게 있을때마다 찾아보면 된다. 부담 NO!
3. 오늘의 과제
- 배터리 셀 품질 모니터링 분석

Q1. 전체 셀 중 불량 셀의 비율을 계산하시오.
SELECT
ROUND(
-- 불량 셀 수 / 전체 셀 수 * 100 → 소수점 2자리까지 반올림
100.0 * COUNT(CASE
-- 불량 조건: 전압 < 3.0V 또는 > 4.3V
-- 또는 온도 < 10°C 또는 > 50°C
-- 또는 내부저항 > 200mΩ
WHEN voltage < 3.0 OR voltage > 4.3
OR temperature < 10 OR temperature > 50
OR internal_resistance > 200
THEN 1
END) / COUNT(*), -- 전체 셀 개수로 나눔
2) AS defect_rate_percent -- 불량률 (%) 출력, 소수점 2자리 반올림
FROM battery_cell_tests;
Q2. 품질 항목별 불량 건수를 구하시오.
SELECT
-- 전압이 기준을 벗어난 경우: < 3.0V 또는 > 4.3V
SUM(CASE
WHEN voltage < 3.0 OR voltage > 4.3 THEN 1
ELSE 0
END) AS voltage_defects,
-- 온도가 기준을 벗어난 경우: < 10°C 또는 > 50°C
SUM(CASE
WHEN temperature < 10 OR temperature > 50 THEN 1
ELSE 0
END) AS temperature_defects,
-- 내부저항이 기준을 벗어난 경우: > 200 mΩ
SUM(CASE
WHEN internal_resistance > 200 THEN 1
ELSE 0
END) AS ir_defects
FROM battery_cell_tests;
Q3. 로트별 불량률을 구하시오.
SELECT
lot_no, -- 생산 로트 번호
-- 불량률(%) 계산: (불량 셀 수 / 전체 셀 수) * 100 → 소수점 둘째 자리까지 반올림
ROUND(
100.0 * SUM(CASE
-- 불량 조건: 전압, 온도, 내부저항 중 하나라도 기준을 벗어난 경우
WHEN voltage < 3.0 OR voltage > 4.3
OR temperature < 10 OR temperature > 50
OR internal_resistance > 200
THEN 1 ELSE 0
END) / COUNT(*), -- 로트 내 전체 셀 수
2) AS defect_rate_percent -- 불량률(%) 컬럼명
FROM battery_cell_tests
GROUP BY lot_no -- 로트 번호별로 그룹화
ORDER BY defect_rate_percent DESC -- 불량률이 높은 순으로 정렬
LIMIT 3; -- 상위 3개 로트만 출력
Q4. 3개 항목 모두 기준 초과한 셀 수를 구하시오.
SELECT
COUNT(*) AS full_defect_cells -- 전압, 온도, 내부저항 모두 불량인 셀의 개수
FROM battery_cell_tests
WHERE
-- 전압이 기준을 벗어난 경우: < 3.0V 또는 > 4.3V
(voltage < 3.0 OR voltage > 4.3)
AND
-- 온도가 기준을 벗어난 경우: < 10°C 또는 > 50°C
(temperature < 10 OR temperature > 50)
AND
-- 내부저항이 기준을 벗어난 경우: > 200 mΩ
internal_resistance > 200;
- 파이썬 알아보기
- Python이 가독성이 높고 문법이 쉽다는 사례
-Python은 영어 문장처럼 읽히는 문법을 사용함. 예를 들어 조건문도 if, else처럼 직관적으로 작성하고,
중괄호 대신 들여쓰기로 코드 구조를 구분해서 처음 보는 사람도 흐름을 이해하기 쉽다. - 가독성이 좋은 언어의 이점
-코드를 빠르게 이해하고 수정할 수 있어 협업과 유지보수가 쉬워짐. 또한 오류를 찾기 쉽고,
비전공자도 비교적 빠르게 학습할 수 있음. - 데이터 분석가가 Python을 알아야 하는 이유
-Python은 데이터 수집, 정리, 분석, 시각화, 머신러닝까지 한 번에 처리할 수 있는 언어입니다.
그래서 데이터 분석 업무에서 매우 실용적으로 사용됨. - 데이터 분석가가 Python을 이용했을 때 이점
-Pandas, NumPy, Matplotlib 같은 다양한 라이브러리를 활용해 반복 작업을 자동화하고
대량의 데이터를 효율적으로 분석할 수 있음.
나의 간단 소감
- 파이썬... SQL과 비슷한듯 하면서도 다른..
'내일배움캠프' 카테고리의 다른 글
| [사전캠프] 데이터기반 QA/QC 부트캠프 9일차 (0) | 2026.05.08 |
|---|---|
| [사전캠프] 데이터기반 QA/QC 부트캠프 8일차 (0) | 2026.05.07 |
| [사전캠프] 데이터기반 QA/QC 부트캠프 6일차-2 (1) | 2026.05.06 |
| [사전캠프] 데이터기반 QA/QC 부트캠프 6일차-1 (1) | 2026.05.04 |
| [사전캠프] 데이터기반 QA/QC 부트캠프 5일차 (0) | 2026.05.04 |