25 개의 열을 포함하는 CSV 파일이 있습니다. 일부는 숫자이고 일부는 범주 형이고 일부는 배우, 감독의 이름과 같습니다. 이 데이터에 회귀 모델을 사용하고 싶습니다. 이렇게하려면 scikit 패키지의 LabelBinarizer를 사용하여 범주형 열 문자열 유형을 숫자 값으로 변환해야합니다. 여러 범주 데이터가있는이 데이터 프레임에서 LabelBinarize를 어떻게 사용할 수 있습니까?데이터 프레임의 여러 열에 대한 LabelBinarizer
는 기본적으로 내가 레이블을 치화하고 dataframe에 추가 할 수 있습니다.
아래의 코드에서 필자는 이진화하려는 열의 목록을 검색하여 df에 새 열을 다시 추가하는 방법을 알 수 없었습니다. 다음 단계에서
categorylist = ['color', 'language', 'country', 'content_rating']
for col in categorylist:
tempdf = label_binarizer.fit_transform(df[col])
는 I은
tempdf
df
추가 원래 열 DF [COL]를 드롭 할.
팬더 데이터 프레임에'df'가 삽입되어 있습니까? 'sklearn' 메쏘드의 출력 (코드에서'fit_transform'과 같은)이 numpy 배열임을 주목하십시오! 따라서 코드에서'tempdf'는'팬더'데이터 프레임이 아닙니다! 먼저 데이터 프레임 (예 :'newdf = pd.DataFrame (tempdf)')으로 변환 한 다음'df'에 연결해야합니다. 또한'del df [ 'column_name']'을 사용하여 열을 삭제할 수 있습니다. 마지막 코멘트는'LableBinarizer' 또는'MultiLabelBinarizer'가 필요한지 확인하는 것입니다. – MhFarahani