데이터 전처리 IQR 이렇게 해도 되나요?
cols = list(X_train.columns[X_train.dtypes != object])
cols
for col in cols:
Q1 = X_train[col].quantile(.25)
Q3 = X_train[col].quantile(.75)
IQR = Q3-Q1
min_iqr = Q1 - 1.5*IQR
max_iqr = Q3 + 1.5*IQR
cnt_before = sum((X_train[col] < min_iqr) | (X_train[col] > max_iqr)) # (X_train[col] < min_iqr) | (X_train[col] > max_iqr), 주어진 조건 둘 중 하나라도 만족, 이상치를 나타내는 값을 선택하는 조건
print(f'{col}의 이상치 처리 전 이상치 개수: {cnt_before}개 입니다.') # f 접두사를 사용하여 문자열 안에서 중괄호 {} 안에 변수나 표현식을 넣을 수 있음
X_train = X_train[(X_train[col] >= min_iqr) & (X_train[col] <= max_iqr)] # (X_train[col] >= min_iqr) & (X_train[col] <= max_iqr), 주어진 조건 둘 다 만족, 이상치를 제외한 정상 범위의 데이터를 선택하는 조건
cnt_after = sum((X_train[col] < min_iqr) | (X_train[col] > max_iqr))
print(f'{col}의 이상치 처리 후 이상치 개수: {cnt_after}개 입니다.')
답변 1
0
작업형2에서 데이터 전처리를 IQR로 해도 되는지를 물어보는거죠?
(어떤 강의에서 질문이 나왔는지 확인이 안되서 정확히 파악을 못하겠습니다 🙌)
실제 데이터에서 IQR활용시 너무 많은 데이터가 삭제 되기도 합니다.
데이터에 따라 성능이 더 떨어질 수도 있고요~~
작업형2 데이터가 공개된 것이 아니므로 상황에 따라 달라지겠지만
경험상 위 전처리를 추천하진 않아요!
이상치 제거는 일단 생략하고 진행한 다음 제출을 1차, 2차 하고나서
여유가 있다면 한번쯤 시도하길 추천 해요
만약 작업형1을 묻는 것이라면 결과(정답)가 동일하면 방법은 코드는 다르게 해도 좋습니다.
작업형1은 정답이 있는 문제입니다
수강 연장 문의드립니다.
0
33
2
강의 연장 문의
0
35
2
수강 신청 연장 문의드립니다.
0
49
2
작업형 1번문제... 환경관련
0
32
2
12회 기출은 언제 업데이트 될까요??
0
41
2
8/6 작성한 연장문의 질문글에 대한 재요청
0
40
2
수강기간 연장 문의
0
42
2
수강기간 연장문의
0
37
2
수강기간 연장 요청 문의드립니다
0
38
2
수강 기간 연장 문의
0
47
2
수강연장 가능 문의 (기간 약 한달반)
0
60
2
수강기간 연장 가능할까요 선생님
0
74
2
Section15. 수업에 사용하는 데이터 주소가 다 보이지 않아서 실습을 위한 데이터를 다운 받지 못하고 있습니다.
0
56
3
수강연장요청 문의
0
92
2
아무래도 다음 시험 연장은 어렵겠죠?
0
112
2
빅분기 12회 결과 관련 문의
0
114
1
책이랑 강의랑 순서나 예제가 다른것 같네요
0
84
2
수강연장 문의
0
107
2
재검토 요청 방법 좀 알려주셔요...-.-;;
0
109
2
12회 실기 질문(작업형 2)
0
94
2
뒤로가기 버튼 같은 것이 있나요?
0
68
1
강의 연장 문의
0
101
2
출력값 질문
0
74
2
수업노트가 어디에 있나요?
0
64
1





