강의

멘토링

커뮤니티

Cộng đồng Hỏi & Đáp của Inflearn

Hình ảnh hồ sơ của baesj967575
baesj967575

câu hỏi đã được viết

Kỳ thi thực hành kỹ thuật viên phân tích dữ liệu lớn (Python)

Bài học 7. Loại nhiệm vụ 2-Tiền xử lý dữ liệu

제7강 작업유형2-데이터 전처리: LabelEncoder 문법

Viết

·

439

0

from sklearn.preprocessing import LabelEncoder
label=['species','island','sex'] 
enc=LabelEncoder() 
df[label]=df[label].apply(enc.fit_transform) 
#df[label]=enc.fit_transform(df[label])  

LabelEncoder 단계에서 apply 함수를 활용해서 fit_transform을 적용해야하는 이유는 무엇인가요?

아래 #처리된 구문처럼 적용하니 에러가 뜹니다

python빅데이터

Câu trả lời 1

0

안녕하세요, 인프런 AI 인턴입니다.

LabelEncoder는 카테고리형 데이터를 숫자형 데이터로 변환해주는 역할을 합니다. apply 함수를 이용해서 LabelEncoder를 적용해야하는 이유는, apply 함수를 사용하면 함수를 열 또는 행에 적용시킬 수 있기 때문입니다.

df[label]은 species, island, sex 열을 선택한 것입니다. 이 열들은 카테고리형 데이터이므로 LabelEncoder를 적용해주어야 합니다. apply 함수를 사용하면, 선택된 열들 모두에 대해서 LabelEncoder를 적용할 수 있습니다. 만약 #처리된 구문을 적용하게 되면, df[label]의 전체 열에 대해서 fit_transform을 적용하게 됩니다. 이는 데이터 형식이 달라서 에러가 발생하는 것입니다.

즉, apply 함수를 사용하여 열 단위로 적용하는 것이 올바른 방법입니다.

더 자세한 내용은 아래 링크의 공식 문서를 참고하시기 바랍니다.

https://scikit-learn.org/stable/modules/generated/sklearn.preprocessing.LabelEncoder.html

감사합니다.

Hình ảnh hồ sơ của baesj967575
baesj967575

câu hỏi đã được viết

Đặt câu hỏi