1. 자료 불러오기

- sklearn → 머신러닝용 파이썬 라이브러리 (= scikit-learn)
- model_selection → 데이터를 나누거나 모델 평가할 때 쓰는 기능 모음
- train_test_split → 데이터를 훈련용(train), 테스트용(test)으로 자동 분리해주는 함수

- names= : 새롭게 만든 변수가 아니라, pd.read_csv() 함수가 원래 가지고 있는 옵션(parameter)으로 CSV 파일을 읽는데, 컬럼 이름은 pima_columns 리스트를 사용하라는 의미
- 사용하는 데이터 파일 원본이 컬럼명을 가지고 있지 않기 때문에 이 과정이 필요함.
[사용한 자료] https://github.com/jbrownlee/Datasets/blob/master/pima-indians-diabetes.names

➡️ column 이름이 설정되어 있지 않음을 확인할 수 있음.

➡️ pima_columns로 기준을 정리하여 위 데이터를 사용할 때 설정해 놓은 columns가 적용되도록 함 (작성자가 설정해 놓았던 컬럼명 이용함)
2. 자료 확인

- 0부터 7까지 : X
- outcome : y
➡️ X와 y값을 분리해야 함.




➡️ 한쪽으로 치우쳐진 상태에서 학습이 일어날 수 있다는 문제점이 있기 때문에, 학습이 일어날 때 비율을 유지하여 편향되지 않도록 설정해야 함.
3. train, test
3-1. 80%(train+validation), 20%(test)로 나누기

- test_size=0.2 : 전체 데이터의 20%를 테스트용으로 쓰겠다
- random_state : 항상 같은 방식으로 섞어서 학습하라는 명령, 42는 의미없음 그저 개발자들이 관습처럼 많이 쓰는 숫자임
- stratify=y : y(정답 비율)를 train/test에서도 비슷하게 유지하라는 의미
‼️ 만약 stratify 안 쓰면 랜덤하게 학습해도 편향이 될 수 있어서 평가도 부정확해질 수 있음
- X_train, X_test, y_train, y_test: 나뉜 결과를 저장하는 변수들

3-2. 80%을 -> 60%(train)+20%(validation)으로 나누기


‼️ 범주형 결과로 Classification로 자료를 분석해야 함을 알 수 있음
4. 결측치 확인

- BP, skin, insulin, bmi 값이 0 ➡️ 결측치가 있음이 확인됨
- ⭐️ test / train을 분리한 후 결측치를 채워줘야 함!!!
➡️ 추후 다시 학습 예정