해결된 질문
작성
·
247
0
안녕하세요 강사님 강의듣던 와중에 질문 있습니다!
2회 작업형2에서는 수치형변수 스케일링 과정이 없었고 이번 3회작업형2에서는 수치형변수 스케일링 과정이 있네요. 혹시 이유가 있을까요? 또 3회에서 MinMaxScaler나 StandardScaler를 쓰는것 또한 저의 재량인지 궁금합니다.\
2회에서는 copy의 과정이 없었는데 3회에서는 copy를 한 이유가 있나요? 시험장에서 어떤방식으로 밀고나가야할지 혼란스러워요ㅠ
괄호안에 ' ' 와 " " 는 동일한가요?
검증데이터 분리시 train_test_split(train.drop('TravelInsurance', axis =1), train['TravelInsurance'] 에서 TravelInsurance를 drop한 이유가 뭔가요? 2회 작업형2에서는 ID를 drop한건 학습할때 필요가 없어서로 알고있는데 해당 문제에서는 Unnamed를 drop해야하는것 아닐까요? 헷갈리네요ㅠㅠ
수치형 변수 스케일링 과정에서
cols = ['Age', 'AnnualIncome', 'FamilyMembers', 'ChronicDiseases'] display(n_train.head()) n_train[cols] = scaler.fit_transform(n_train[cols]) n_test[cols] = scaler.transform(n_test[cols]) n_train.head()
이 부분에서 2회 작업형 2번처럼 cols안에 여러개가 들어있으므로
아래와 같이 반복문을 쓰거나
for col in cols: le = LabelEncoder() X_train[col] = le.fit_transform(X_train[col]) X_test[col] = le.transform(X_test[col])
아래와 같이 일일히 col을 설정해줘야 오류가 안생기지 않나요?
# col = 'Warehouse_block' # le = LabelEncoder() # X_train[col] = le.fit_transform(X_train[col]) # X_test[col] = le.transform(X_test[col]) # col = 'Mode_of_Shipment' # le = LabelEncoder() # X_train[col] = le.fit_transform(X_train[col]) # X_test[col] = le.transform(X_test[col]) # col = 'Product_importance' # le = LabelEncoder() # X_train[col] = le.fit_transform(X_train[col]) # X_test[col] = le.transform(X_test[col]) # col = 'Gender' # le = LabelEncoder() # X_train[col] = le.fit_transform(X_train[col]) # X_test[col] = le.transform(X_test[col])
답변 1
0
스케일링은
필수 아니고 선택입니다. 트리계열의 모델에서는 드라마틱한 효과가 없어요!
하나만 알고 계셔도 되고, 여유가 되면 적용을 추천합니다.
작업형2는 영상마다 약간씩 다르게 진행할 거에요! 한번에 모든 것을 알려드릴 순 없어 하나씩 다르게 작업하고 있다고 봐주세요!
copy()는 데이터 프레임을 옮겨 담을 때 새로운 변수명에다가 담게 되면 반드시 copy()를 붙여주세요!! 사본(복사본)임을 표시해야 워닝이 발생하지 않습니다.
예 df = df.sort_values(작업....) <- 안해도됨
예 df2 = df.sort_values(작업...).copy() <- 새로운 변수에 복사
네 동일합니다.
TravelInsurance은 우리가 예측해야하는 컬럼 그러니깐 y데이터, label, target이라 불립니다.
fit(X데이터, y데이터)를 입력으로 넣어야 해서 train에 있는 y데이터를 삭제한 값을 인풋으로 넣었어요!
작업형2 모의고사 1,2,3 그리고 기출 4,5회까지 반복해보면 감이 오실거에요~~:)
5번은
네 반복문을 활용하거나 5번의 라벨인코딩을 반복하거나 하면됩니다.
아래쪽 코드가 한줄로 보여서 제가 읽을 수가 없네요 질문에 코드가 있을 때는
코드블럭 아이콘을 활용해주세요 :)