모든 변수 이산화하기
연속형 변수를 하나씩 이산화하는 대신, 자동으로 이산화하는 편이 더 쉽습니다. Python에서 모든 열 목록을 가져오려면 다음을 사용할 수 있어요.
variables = basetable.columns
이산화는 연속형 변수에만 적용해야 합니다. 사전에 정한 기준보다 서로 다른 값의 개수가 많은지 확인해, 해당 변수를 이산화할지 판단할 수 있어요.
이 연습은 강의의 일부입니다
Python으로 배우는 예측 분석 입문
연습 안내
- basetable의 모든 열 이름을 담은 목록
variables를 만드세요. - 목록
variables의 모든 변수를 확인하는 반복문을 만드세요. - 서로 다른 값이 5개를 초과하는 변수만 이산화되도록
if문을 완성하세요. - 연속형 변수를
qcut메서드를 사용해 10개 구간으로 묶으세요.
실습형 인터랙티브 연습
이 예제를 이 샘플 코드를 완성하여 풀어보세요.
# Print the columns in the original basetable
print(basetable.columns)
# Get all the variable names except "target"
variables = list(____.____)
variables.remove("target")
# Loop through all the variables and discretize in 10 bins if there are more than 5 different values
for variable in ____:
if len(basetable.groupby(____))>____:
new_variable = "disc_" + variable
basetable[new_variable] = pd.qcut(basetable[____], ____)
# Print the columns in the new basetable
print(basetable.columns)