내일배움 본캠프

[스파르타 본캠프]Colab으로 데이터 분석하기

hyeon-ji 2026. 5. 12. 16:48

 오전에 팀원들과 스크럼을 진행하며 각자의 목표를 세우며 하루를 시작하였다.

 데이터 분석 종합반 2번째 강의를 수강하며 변수, 라이브러리, colab, 리스트, 딕셔너리 등에 대한 개념을 익히는 시간을 가졌다.

 추가로 커리어 스터디를 진행하며 내가 관심있는 직무의 JD를 분석해 나갔다.

오후에 팀원들과 아티클 스터디를 한 후 오후 스크럼을 진행하며 오전에 설정한 목표를 잘 해내었는지, 팀원들과 공유할만한 내용들을 서로 공유하며 하루를 마무리하였다.


 어제 엑셀로 분석을 진행한 것을 Python을 이용하여 데이터 분석을 진행하였다. Colab이라는 툴을 활용하여 어제와 동일한 타이타닉 데이터를 활용하여 상관관계 분석을 진행하였다.

더보기

구글링 Tips!

 

● 네이버 보단 구글 활용하기     →  네이버 보단 구글에서 더 많은 정보를 찾을 수 있다

● 영어로 검색하기      →  코딩과 관련된 정보는 주로 영어로 작성되어 있는 경우가 대부분이므로 영어로 검색하는

                                         것이 더 확실한 데이터를 얻을 수 있다

● 특수기호 활용하기      →  “검색어 + 특정기술” 형태로 검색 시 특정기술 부분이 반드시 포함되어야 하므로 원하는

                                              정보 찾기가 수월하다 (반대로 -기호를 넣으면 해당 내용 제거)

▶ Colab을 활용하여 파이썬 입력하기

 

더보기

☆ 변수란? : 데이터를 담는 컨테이너이다. 특정한 이름이 있는 상자에 원하는 데이터를 담아 두었다가, 그 이름만 부르면 데이터를 쉽게 호출할 수 있다

 

☆ 변수가 필요한 이유 : 프로그램 짤 때 필요한 변수를 그때그때 찾아서 사용하기 위해

 

1. 변수 선언하기

x = 5
y = 3

 

2. 변수 호출하기

print(x)
print(y)

 

3. 사칙연산 가능

 

● 변수 선언&변수 호출&사칙연산

 

4. List 지정하기

더보기

List란?

순서에 맞추어 변수를 저장하고, 저장한 목록을 변수에 넣어주는 역할. 즉, 순서가 있는 데이터들의 모음집

[] 대괄호 사용! (대괄호가 있다면 그것은 list !)

● list에는 무엇이든 다 들어갈 수 있다 (숫자, 문자, 리스트 ... )

 

 

인덱스란? 

● 리스트 안의 데이터들의 번호, 순서

● 컴퓨터 세상에서는 '0'부터 시작

  list 선언하기

리스트는 “대괄호”를 사용하여 작성한다.

--> 리스트 = [ 데이터, 데이터, 데이터, …. ]

a_list = [1,2,3,4,5]
#또는,
b_list = [1,2,'hey','world']

 

● list 호출하기

리스트 데이터는 인덱스(순서)를 활용해 출력 할 수 있다.

--> 리스트[해당 데이터 인덱스]

#리스트 예시
b_list[1] #2를 출력
b_list[2] #hey를 출력

[Quiz] 리스트 인덱스로 데이터를 호출하자

 

1) 리스트에서 4라는 데이터를 뽑아 봅시다.

2) 리스트에서 [5,6] 라는 데이터를 뽑아 봅시다.

3) 리스트에서 5 라는 데이터를 뽑아 봅시다.

list_exercise[3, 4, [5,6], 8]

print(list_exercise[1])
print(list_exercise[2])
print(list_exercise[2][1])

 

 

5. 딕셔너리를 알아보자

더보기

딕셔너리란?

 

● 말 그대로 명칭과 뜻이 쌍으로 이루어진 "사전"과 같이, "이름"과 "이름에 해당하는 값"이 쌍으로 이뤄진 데이터들의 모음집이다

● 원하는 정보를 쉽게 찾을 수 있어 데이터 관리를 효율적으로 할 수 있다

{} 중괄호 사용!

● 딕셔너리 선언하기

 딕셔너리는 “중괄호”를 사용하여 작성한다.

--> 딕셔너리 = { 키:벨류, 키:벨류, 키:벨류, …. }

#딕셔너리 예시
student_age = {'Jack': 32, 'Ritika': 31, 'Mark' : 22, 'Mathew' : 27}

 

● 딕셔너리 호출하기

딕셔너리의 값은 딕셔너리의 해당 키를 불러 줌으로써 출력 할 수 있다.

--> 딕셔너리[키]

student_age['Jack']#32

 [Quiz] 리스트 딕셔너리 연습하기

dic_exercise = {'name' : :bob", "age" : 21, "height" : 180} 에서

1) 이름 데이터 불러오기

2) 나이 데이터 불러오기

3) 키 데이터 불러오기

 


▶ pandas와 matplotlib을 활용하여 데이터 분석하기

pandas를 이용하여 데이터 분석하기

전 시간에 진행했던 타이타닉 데이터 분석을 pandas를 이용하여 재분석을 진행했다.

 

1) pandas 사용함을 알리기

 

2) 데이터 불러오기

- 목록창 > 파일 > 업로드(내가 사용할 데이터 파일 업로드하기)

- 불러온 데이터 읽도록 지정하기

더보기

pd = pandas

read_table = 테이블을 읽어라

불러온 train.csv 데이터를 읽어라

 

엑셀 파일도 불러오기 가능!

3) head를 사용하여 데이터 읽어오기

import pandas as pd
titanic = pd.read_table('train.csv',sep=',')
titanic.head(6)

위 결과를 보면 설정한 값인 '6'만큼 데이터를 읽어온 것을 확인할 수 있다.

 

4) 데이터 전처리하기(클렌징 하기)

#Null(공백) 데이터 파악하기
print(titanic.isnull().sum())

# 공백 데이터 제거하기
titanic = titanic.dropna()
print(titanic.isnull().sum())

위 : 공백 데이터 확인 / 아래 : 공백 데이터 제거

 

5) 타이타닉 데이터를 이용하여 상관계수 구하기

#상관계수 구하기
corr=titanic.corr(method='pearson')
corr

 

6) 원하는 데이터만 확인하기(생존자 데이터 지우기)

#Survived 상관계수 제거하기
corr = corr[corr.Survived !=1]
corr

 

7) matplotlib을 이용하여 시각화 자료 생성하기

import matplotlib.pyplot as plt
corr = plot()

 

8) 원하는 값만 시각화 자료로 만들기

import matplotlib.pyplot as plt
corr = corr.drop(['PassengerId'], axis ='rows')
corr['Survived'].plot()
#passenger id는 분석 결과에 필요없는 데이터이므로 삭제
#Survived 값만 남기고 다른 값은 제거

 

- bar 형태로도 시각화자료 생성 가능

corr['Survived'].plot.bar()

 

☞ 데이터 분석 결과를 통해 Sex 와 PClass가 가장 결과가 큰 영향을 미치는 인자임을 알 수 있다.


▶ numpy와 seaaborn 이용하여 시각화하기

1) 데이터 불러온 후 결측치 제거, 통계치 요약하기

import pandas as pd
import matplotlib.pyplot as plt
import numpy as np
import seaborn as sns
#데이터 불러오기
titanic = pd.read_table('train.csv',sep=',')

#데이터 확인하기
titanic.head()

#데이터 확인 및 결측치 제거
print(titanic.isnull().sum())
titanic = titanic.dropna()

#타이타닉 데이터 통계치 요약하기
titanic.describe()

 

2) 나이별로 히스토그램 구하기

#나이별로 히스토그램 구하기
titanic['Age'].hist(bins=40,figsize=(18,8),grid=True)

 

3) 나이별 구분 및 생존율 확인하기

#나이별 구분 및 각 나이별 생존율 확인 하기
titanic['Age_cat'] = pd.cut(titanic['Age'],bins=[0,3,7,15,30,60,100],include_lowest=True,labels=['baby','children','teenage','young','adult','old'])

#연령대를 기준으로 평균 값을 구해 볼수 있어요!
titanic.groupby('Age_cat').mean()

#groupby란? --> 원하는 컬럼을 기준으로 그룹을 묶을 수 있도록 만들어주는 함수
#mean()이란? --> 평균값을 구하는 함수

 

4) seaborn을 사용하여 나이대와 생존율 관계 그래프 그리기

#그래프 크기 설정
plt.figure(figsize=(14,5))

# 바 그래프 그리기 (x축 = Age_cat, y축 = Survived)
sns.barplot(x='Age_cat',y='Survived',data=titanic)

# 그래프 나타내기 
plt.show()


▶ 실습 진행

코드 입력

 

☞ 분석 결과 당뇨병에 가장 큰 영향을 미치는 요인이 "Glucose"임을 알아내었다!


📅 Day 2. 도메인 주요 제품과 공정 확장 조사

1. 선택 도메인의 주요 제품 정리

선택 도메인 화장품
주요 제품 뷰티 디바이스
이 제품을 선택한 이유 안티에이징과 홈뷰티가 극상하면서 다수의 뷰티 디바이스들이 출시되고 있다고 판단하였고, 소비자가 직접 피부에 사용하는 제품이다보니 안정성이 매우 중요하다.
이 제품에서 품질관리가 중요한 이유 뷰티 디바이스에서 RoHS기준에 초과하는 유해물질이 검출될 시 안전 문제뿐 아니라 수출 불가 및 신뢰성에 문제가 발생한다.
이외에도 디바이스의 불량은 소비자들의 안전 문제와 더불어 공급망 문제까지 이어질 수 있어 공정 데이터 기반 품질관리가 중요하다.

 

2. 제품이 만들어지는 공정 흐름

공정 단계 어떤 과정인가요? 이 공정에서 관리해야 할 품질 포인트 발생할 수 있는 데이터
제품 기획 및 설계 (R&D) 고주파(RF), 초음파(HIFU), LED, EMS 등의 기능을 기획하고 제품 구조·회로·펌웨어를 설계하는 과정 출력 안정성, 피부 안전성, 발열 제어, 사용 편의성 확보 제품 스펙, 회로 설계 데이터, 시제품 테스트 결과, 펌웨어 버전
부품 생산 및 준비 공정 PCB, LED 모듈, 배터리, 초음파 소자 등 핵심 부품을 수급·검사하고 양산 준비를 진행하는 과정 부품 규격 오차, 외관 불량, 공급 부품 품질, RoHS 기준 충족 여부 확인 LOT 번호, 공급사 정보, 검사 결과, 부품 불량률
SMT 및 본체 조립 공정 PCB에 전자부품을 실장(SMT)하고 배터리·하우징(몸)·피부 접촉 헤드 등을 조립하여 제품 형태를 완성하는 과정 납땜 불량 여부, 회로 연결 상태, 이물 혼입 여부, 체결 및 방수 상태 확인 SMT 온도 데이터, AOI 검사 결과, 작업 이력, 조립 불량률
기능 및 안전성 검사 공정 LED 출력, EMS 강도, 초음파 세기, 진동, 온도 등을 테스트하여 정상 동작과 안전성을 검증하는 과정 출력 기준 충족 여부, 피부 자극 가능성, 과열 및 누전 여부 확인 전류·전압 데이터, 출력 데이터, 온도 데이터, 배터리 성능 데이터
최종 검사 및 인증 공정 완성 제품의 외관·충전 상태를 최종 확인하고 KC·CE·FDA 등의 인증 기준을 검토한 뒤 포장 및 출하하는 과정 외관 품질, 충전 정상 동작 여부, 인증 기준 충족 여부 확인 최종 검사 결과, 시리얼 번호, 인증 시험 결과, 출하 이력

 

3. 기존 JD 역량과 공정 연결하기

기존 JD에서 발견한 역량 연결되는 공정 왜 이 역량이 필요할까요?
공정 관리 SMT 및 본체 조립 공정 PCB 실장, 배터리 조립, 하우징 체결 과정에서 공정 순서와 작업 조건이 일정해야 제품 품질이 안정적으로 유지되기 때문입니다.
기준 관리 기능 및 안전성 검사 공정 LED 출력, EMS 강도, 온도 등의 기준값이 일정 범위를 벗어나면 피부 자극이나 제품 성능 저하 문제가 발생할 수 있기 때문입니다.
데이터 분석 역량 기능 및 안전성 검사 공정 전류·전압·온도·출력 데이터를 분석하여 이상 패턴이나 성능 편차를 조기에 발견하고 품질 문제를 예방해야 하기 때문입니다.
불량 분석 최종 검사 및 인증 공정 검사 결과와 불량 유형을 분석하여 반복적으로 발생하는 문제의 원인을 파악하고 공정 개선으로 연결해야 하기 때문입니다.

 

4. 오늘의 한 줄 정리

 뷰티 디바이스 공정에서는 온도, 전류, 출력, 조립 조건과 같은 데이터가 제품 성능과 안정성에 직접적인 연관성을 지니고 있으므로 데이터 기반 품질관리가 중요하다고 생각한다.