강의

멘토링

커뮤니티

인프런 커뮤니티 질문&답변

작은빗방울님의 프로필 이미지
작은빗방울

작성한 질문수

[개정판] 파이썬 머신러닝 완벽 가이드

사용자정의 함수 인자에 None을 할당하는 이유

해결된 질문

작성

·

478

0

책 p.174에 보면 get_clf_eval()이라는 사용자 정의함수를 만들 때,

get_clf_eval(y_test, pred=None, pred_proba=None)처럼 두 인자에

None을 할당합니다. None을 할당하는 경우와 None 할당 없이

get_clf_eval(y_test, pred, pred_proba)

이렇게만 쓰는 경우는 어떤 차이가 있나요?

답변 1

1

권 철민님의 프로필 이미지
권 철민
지식공유자

안녕하십니까,

두개의 큰 차이는 없습니다.

다만 get_clf_eval(y_test, pred=None, pred_proba=None)의 경우는

pred와 pred_proba 인자를 입력하지 않아도 기본적으로 None이 입력 됩니다.

그러니까, get_clf_eval(y_test) 이렇게 호출해도 pred=None, pred_proba=None 으로 정상 동작합니다.

get_clf_eval(y_test, pred=pred값) 이렇게 호출해도  pred_proba=None 으로 정상 동작합니다.

그런데 get_clf_eval(y_test, pred, pred_proba) 로 하면 y_test, pred, pred_proba를 어찌되었든 호출 시에 값을 넣어 줘야 합니다.

즉 get_clf_eval(y_test, pred=pred값)은 pred_proba인자가 입력되지 않아서 호출시 오류를 발생 시킵니다.

감사합니다.

작은빗방울님의 프로필 이미지
작은빗방울

작성한 질문수

질문하기