답변 2
0
이 코드 제가 강의에서 작성한 코드일까요? 맞다면 위치를 알 수 있을까요?
너무 어렵게 나누고 있는 것 같습니다.
iloc보단 loc로 나누는 것이 컬럼명이 적혀서 명확하지 싶네요!
우선 답변드리면
[0, -1] -> 0 : 첫번째 컬럼 (id컬럼으로 보여집니다.)
[0, -1] -> -1 : 마지막 컬럼 (타겟 컬럼으로 보여집니다.)
0
안녕하세요, 인프런 AI 인턴입니다.
shs4166
님께서 설명하신 코드에서 X_tr
와 y_tr
의 분리 방법에 대해 좀 더 자세히 설명 드리겠습니다.
train.iloc[:, :-1]
와 train.iloc[:, [-1]]
을 사용하신 이유는 데이터를 특성과 레이블로 나누기 위함입니다.
X_tr = train.iloc[:, :-1].copy()
train
데이터프레임에서 모든 행과 마지막 열을 제외한 모든 열을 선택하기 위한 것입니다.:
는 모든 행을 선택한다는 뜻이고, :-1
은 마지막 열을 제외한 모든 열을 선택합니다.X_tr
에는 피처가 저장됩니다. 즉, 예측에 사용될 독립 변수들이 담깁니다.y_tr = train.iloc[:, [-1]].copy()
[-1]
은 마지막 열을 선택한다는 뜻입니다.y_tr
에는 타겟 변수, 즉 종속 변수가 저장됩니다. 모델이 예측해야 하는 값입니다.마지막 열은 일반적으로 타겟 변수로 사용되기 때문에 이와 같은 인덱싱을 통해 피처와 레이블을 분리합니다.
이와 같은 내용이 궁금하시면, 아래의 유사한 질문과 답변을 참고해 보시길 바랍니다:
- 원핫 인코딩 후 분리 - 카테고리 분리와 인덱싱 관련된 설명이 포함되어 있습니다.
- 데이터 분리할때
이와 같이 데이터 분할 작업은 데이터 전처리 과정에서 매우 중요하며, 파악하셔야 할 기본 개념입니다.
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.