
벌써 금요일이다 하루하루 후딱 가는거 같ㅇ...ㅏ..
오늘 최대한 할거 끝내놓고 주말에는 푹 쉬자 (그랬으면 😮💨)
: 데이터를 분석하기 전에 잘 이해하기 위해 다양한 관점에서 쪼개보고, 돌려보고, 비교해보는 과정 (탐색적 데이터 분석)
▶︎ 문제의 본질을 파악하는 과정
▪️ 컬럼마다 무슨 뜻인지 이해하기
▪️ 결측치나 이상치가 있는지 확인하기
▪️ 변수 간 관계 (상관관계)를 살펴보기
▪️ 그래프 (히스토그램, 박스플롯 등)로 분포 보기
▪️ 데이터의 단위, 범위, 의미를 체크하기
☝️ 맛있는 요리를 만들기 위해 가장 먼저 해야 할 일은 좋은 식재료 (EDA를 잘 수행한 고품질의 데이터)를 준비한다 ➡️ 식재료가 신선하고 좋으면 조리법 (분석 방법)이 복잡하지 않아도 맛있는 요리가 완성된다
▶️ 의미 있는 데이터가 있으면 복잡한 기법 없이도 좋은 분석 결과를 얻을 수 있다는 뜻이다
EDA를 충분히 수행하면 데이터의 구조와 패턴을 잘 파악할 수 있어 복잡한 알고리즘 없이도 단순한 모델로 안정적이고 유의미한 분석 결과를 얻을 수 있다 ✨
☝️ 사용자의 설문조사 데이터를 분석한다고 가정해보자
만족도 컬럼이 대부분 1, 2라는 숫자로 기록되어 있어서 단순히 숫자로 인식하고 평균을 내 만족도를 분석했는데 알고 보니 이 숫자들은 범주형 데이터였다
▶️ 데이터를 충분히 이해하지 못한 채 분석을 시작하면 올바른 결과를 얻기 어렵다
데이터를 제대로 파악하면 분석의 방향이 명확해지고 불필요한 시행착오를 줄일 수 있으며 보다 유의미한 인사이트를 도출할 수 있다 🧠
1️⃣ raw data의 description, dictionary를 통해 데이터의 각 column들과 row의 의미를 이해하는 기술

분석을 시작하기 전에 각 column과 row의 의미를 먼저 파악하지 않으면 분석의 방향을 제대로 설정하기 어렵다 🤯
✔️ 데이터를 잘 이해하기 위해서는 보통 데이터와 함께 제공되는 description(데이터 설명 문서)에서 해당 데이터의 목적과 내용을 확인하는 것이 큰 도움이 된다
✔️ 각 컬럼이 어떤 정보를 나타내는지 정리한 데이터 dictionary가 함께 제공되는 경우가 많으며 이를 참고하면 데이터의 구조와 의미를 더 명확하게 이해할 수 있다
2️⃣ 결측치 처리 및 데이터 필터링 기술

결측치가 있는 상태에서 분석을 진행하면 평균을 계산할 때 오류가 발생하거나 시각화 과정에서 데이터가 누락되어 왜곡될 수 있고 모델 학습 시 정확도가 떨어질 수 있다
➡️ 분석 전에 결측치를 최대한 적절하게 처리해줘야 한다
➕ 결측치 : 값이 비어 있는 상태
☝️ 타이타닉 데이터에서는 Age 컬럼에 나이 정보가 비어 있는 경우가 종종 있다
그런데 나이 값은 생존률과 관련이 있을 가능성이 높기 때문에
✔️ 단순히 결측치를 삭제하기보다는 평균값이나 중앙값으로 채워 보완하는 방법이 적절하다
✔️ 데이터 타입도 반드시 확인해야 하는데 숫자처럼 보이지만 문자열(Object) 타입으로 잘못 인식된 경우에는 수치형으로 변환해줘야 분석 함수가 제대로 작동한다
분석을 시작하기 전에 반드시 결측치 처리와 데이터 타입 정리를 먼저 해두는 것이 안정적인 분석 결과를 얻는 데 도움이 된다 ‼️
3️⃣ 누구나 이해하기 쉬운 시각화를 하는 기술

사람들은 종종 화려하고 멋있어 보이는 그래프를 만들고 싶어한다
하지만 그래프는 누구나 쉽게 의미를 이해할 수 있어야 하며 전달하고자 하는 메시지를 직관적으로 보여줄 수 있어야 한다
겉보기에는 단순해 보여도 명확하게 정보를 전달하는 그래프가 오히려 더 효과적이고 시각적으로 우수하다 👍
요즘처럼 변화가 빠른 시대에는 끊임없이 쏟아지는 새로운 정보를 고정관념 없이 있는 그대로 받아들이는 태도가 중요한데 이는 데이터 분석에서도 마찬가지다
데이터가 우리에게 무엇을 말해주는지 있는 그대로 바라보고 혼자 추론하거나 예상하기보다는 편향을 내려놓고 데이터 자체에 집중해야 숨겨진 의미와 패턴을 정확히 파악해야 효과적인 분석이 가능하다
☝️ '주말에 사람들이 카페에 많이 가니까 주말에 매출이 높을 것이다' 라고 미리 추론하고 데이터를 보면 주말 매출이 높은 걸 확인하고 "내 생각이 맞았네!"라고 쉽게 결론을 내리게 된다 (이것만 보고 전략을 세우면 충분 ❌)
평일 오전에는 직장인들이 커피를 사 먹고, 브런치를 즐기는 주부 고객도 있을 수 있으며 평일 저녁에는 손님이 거의 없을 수도 있다 (한가지만 보고 분석하면 중요한 부분 놓칠 수 있음❗️)
▶️ 처음부터 결론을 정해놓기보다 여러 관점에서 다양하게 살펴보며 편향 없이 열린 자세로 데이터를 바라봐야한다
데이터 분석은 수집 직후 바로 진행되는 것이 아니라 먼저 전처리 단계에서 데이터를 정리하며 분석을 위한 준비 과정을 거친다
🟰 탐색적 데이터 분석
☝️ 요리하기전에 냉장고 열어서 재료 보는 것와 같다
💡 https://www.kaggle.com/

원하는 데이터를 검색해 무료로 찾아볼 수 있으며, 일부 기업 데이터를 임시로 확인할 수 있지만 사기업 데이터는 상대적으로 적다
✔️ 데이터 이해
이 데이터가 어떤 구조인지, 숫자인지 문자값인지, 뭘 의미하는지 파악할 수 있다
✔️ 문제 미리 발견
누란된 값, 이상치 (너무 큰 값)같은 문제를 조기에 발견할 수 있다
✔️ 분석 방향 설정
어떤 컬럼이 중요할지, 어떤 분석이나 모델이 필요할지 힌트를 얻을 수 있다
✔️ 데이터의 숨은 패턴 발견
시각화를 통해 관계나 경향을 발견할 수 있다
: 국제적으로 많이 쓰이는 데이터 분석 표준 프로세스
1️⃣ 비즈니스 이해
무엇을 위해 분석하는지, 목적과 가치를 정의한다
(목적이 없으면 길을 잃음❗️)
2️⃣ 데이터 이해
데이터를 불러와서 어떤 모습인지 구조와 통계를 파악한다
3️⃣ 데이터 준비
이상치, 누락값 처리하고 머신러닝에 맞게 잘 다듬어 정리한다
4️⃣ 모델링
데이터를 바탕으로 예측 모델을 만들고 학습시키며, 이를 통해 예측을 위한 규칙을 생성한다
(앞 단계 준비가 잘 되어 있어야 잘 작동됨❗️)
5️⃣ 평가 모델
얼마나 잘 작동하는지 확인한다
6️⃣ 배포
분석 결과를 정리하고 공유하거나 적용시킨다
: AI가 가지고 있는 학습기술 중 하나로, 사람이 가르쳐주지 않아도 데이터가 스스로 배워서 똑똑해지는 것
↪︎ 머신러닝은 AI의 하위 개념으로 AI를 구현하는 방법 중 하나다
☝️ 예전에는 사람이 스팸 메일 여부를 직접 분류하는 코드를 만들어야 했다면, 요즘은 머신러닝이 데이터를 학습해 스팸 패턴을 스스로 인식하고 자동으로 처리해준다
☝️ 유튜브도 사용자의 시청 데이터를 바탕으로 스스로 학습해, 이 사람이 어떤 영상을 좋아할지 예측하고 추천 알고리즘에 반영한다
컴퓨터도 데이터를 많이 학습할수록 점점 더 정확하게 예측할 수 있게 된다 ‼️
⏺️ CSV 파일을 GPT에 업로드한다

Kaggle에서 데이터를 받으면 보통 CSV 형식으로 제공되는데, 이 값을 살펴보고 어느 정도 데이터를 정리하고 다듬는 전처리 작업이 필요하다
1️⃣ 비즈니스 이해 (Business Understanding)
누가 이 데이터를 활용할지, 어떤 가치를 줄 수 있을지 고민하며 분석의 목적을 명확히 설정한다
🤖 이 데이터셋의 분석 목적을 설정해줘 / ~목표로 누구에게 어떤 가치를 줄 수 있는지 정리해줘
2️⃣ 데이터 이해 (Data Understanding)
데이터의 구조를 확인하고, 히스토그램이나 상관관계 분석 등으로 분포를 시각화한다
🤖 데이터 구조와 통계를 보여줘 / 누락값, 이상치 여부도 알려줘
🤖 주요 변수들의 분포도 시각화해줘
3️⃣ 데이터 준비 (Data Preparation)
▫️ 이상값 처리 (IQR 하한/상한 제한)
▫️ 범주형 변수 인코딩 (0/1, 원핫 인코딩)
▫️ 필요 없는 열 제거, 스케일링
🤖 이상값을 IQR 방식으로 처리해줘 (= 너무 크거나 작은 튀는 숫자들을 빼줘)
🤖 범주형 변수는 인코딩해줘 (= 글자로 되어있는 것을 숫자로 바꿔줘)
▶︎ 데이터는 글자를 분석하지 못함❗️
🤖 분석에 불필요한 컬럼은 제거해줘
4️⃣ 모델링 (Modeling)
▫️ 훈련 데이터와 테스트 데이터 분리
▫️ 선형회귀, 트리 등 다양한 모델 학습
▫️ 예측 결과 확인
🤖 선형 회귀, 랜덤포레스트, 그레디언트 부스팅 모델을 학습시켜줘 / RMSE로 성능 비교해줘
5️⃣ 평가 (Evaluation)
▫️ 모델 성능 평가 (RMSE, MAE)
▫️ 예측 결과 시각화
▫️ 오차 분석
🤖 기존 모델들과 비교해, 성능이 좋은지 평가해줘 / 시각화로 예측값과 살제값 비교해줘
6️⃣ 배포 (Deployment)
결과를 요약하고 추천 사항을 제시하며, 모델과 도출된 인사이트를 문서화한다
🤖 이 분석 결과를 기반으로 한 보고서나 발표자료를 요약해줘
핵심은 EDA를 GPT에서도 할 수 있다는 점 ‼️


