인프런 영문 브랜드 로고
인프런 영문 브랜드 로고

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

김성광님의 프로필 이미지
김성광

작성한 질문수

[퇴근후딴짓] 빅데이터 분석기사 실기 (작업형1,2,3)

작업형2 모의문제2

transform 이해가 안돼요

해결된 질문

작성

·

235

0

  •  

    cols = ['neighbourhood_group', 'neighbourhood', 'room_type']
    from sklearn.preprocessing import LabelEncoder
    
    for col in cols:
      le = LabelEncoder()
      train[col] = le.fit_transform(train[col])
      test[col] = le.transform(test[col])
    
    train[cols]

    마지막에 train[col]이 아니고 train[cols]에 담긴게 이해가 안돼요

     

     

    cols에서 꺼내서 col에 담았고.. for문 아래에도 col에 담았는데 왜 최종적으로는 cols에 담긴거예요??

     

답변 1

0

퇴근후딴짓님의 프로필 이미지
퇴근후딴짓
지식공유자

train[cols]에서 cols는 리스트입니다.
이 리스트에는 변환하고자 하는 열의 이름이 여러 개 포함되어 있죠. 여기서는 'neighbourhood_group', 'neighbourhood', 'room_type' 이렇게 세 개의 열 이름이 들어있습니다.

for col in cols: 구문에서,
cols 리스트의 각 항목을 반복하면서, col 변수에 그 항목을 담습니다.
여기까진 이해가 된 것 같아요!


col 변수에 담은 것이 아니라 train[col]에 담은 것이에요!

바꿔 말하면 첫번째 col인 train['neighbourhood_group'] 컬럼에 인코딩된 데이터가 담긴 것이죠

 

그리고 최종 trian[cols]

train[['neighbourhood_group', 'neighbourhood', 'room_type']]

입니다. cols을 출력하는 것이 아니라 train에 있는 cols 컬럼을 출력하는 거에요

 

김성광님의 프로필 이미지
김성광

작성한 질문수

질문하기