필요한 라이브러리 임폴트!
# Data Preprocessing Template
# Importing the libraries
import numpy as np
import matplotlib.pyplot as plt
import pandas as pd
머신러닝을 하기위해 필요한 데이터를 불러와야 한다
- pd.read_csv(' ')
df = pd.read_csv('../data/Data.csv')
df
문자열로 되어 있는 컬럼 데이터 확인하기
df['Country'].nunique()
# 3
sorted(df['Country'].unique()) # 알파벳 순으로 정렬하기 위한 sorted()
# ['France', 'Germany', 'Spain']
df['Purchased'].nunique()
# 2
sorted(df['Purchased'].unique())
# ['No', 'Yes']
데이터의 NaN 처리하기
- 데이터에 NaN이 몇개인지 확인하기
df.isna().sum()
>>>
Country 0
Age 1
Salary 1
Purchased 0
dtype: int64
- 1. 삭제하는 방법
df.dropna()
>>>
Country Age Salary Purchased
0 France 44.0 72000.0 No
1 Spain 27.0 48000.0 Yes
2 Germany 30.0 54000.0 No
3 Spain 38.0 61000.0 No
5 France 35.0 58000.0 Yes
7 France 48.0 79000.0 Yes
8 Germany 50.0 83000.0 No
9 France 37.0 67000.0 Yes
- 2. 채우는 방법 _데이터프레임의 숫자(numeric_only=True)만 평균(mean())으로 계산하여 채웠다
df.fillna(df.mean(numeric_only=True))
>>>
Country Age Salary Purchased
0 France 44.000000 72000.000000 No
1 Spain 27.000000 48000.000000 Yes
2 Germany 30.000000 54000.000000 No
3 Spain 38.000000 61000.000000 No
4 Germany 40.000000 63777.777778 Yes
5 France 35.000000 58000.000000 Yes
6 Spain 38.777778 52000.000000 No
7 France 48.000000 79000.000000 Yes
8 Germany 50.000000 83000.000000 No
9 France 37.000000 67000.000000 Yes
X, y 데이터 분리 : 학습할 변수와 레이블링 변수로 분리한다
NaN이 삭제된 df
y 내가 예측해야하는 것 1차원 시리즈(백터)는 소문자로 작성
X 는 항상 2차원 데이터 행렬은 대문자로 작성
y = df['Purchased'] # 얻고 싶은 답
X = df.loc[ : , 'Country':'Salary' ] # 답을 주는 데이터
'MACHINE | DEEP LEARNING > Machine Learning Project' 카테고리의 다른 글
[AI] 머신 러닝 Multiple Linear Regression 순서 및 과정 (0) | 2024.04.14 |
---|---|
[AI] 머신 러닝 Simple Linear Regression 순서 및 과정 (0) | 2024.04.14 |
[AI] 머신러닝 Feature Scaling(StandardScaler(), MinMaxScaler()) / Dataset을 Training과 Test로 나누는 방법 (2) | 2024.04.12 |
[AI] 머신러닝 문자열 데이터를 숫자로 바꾸는 방법_Label Encoding, One Hot Encoding (0) | 2024.04.12 |
[AI] 머신러닝_Supervised Learning, Training 과 Test 이론 (2) | 2024.04.12 |