음수 인덱스를 활용한 라벨 추출

40 P
QUESTION 09 #332
데이터셋의 마지막 열이 항상 정답(y)일 때, 인덱스 번호를 직접 세지 않고 뒤에서부터 접근하는 음수 인덱스를 사용해 보세요.
main.py
dataset = [[20, 70, 50], [25, 80, 80], [30, 85, 110]]
y = []

for row in dataset:
    # 마지막 요소는 인덱스 -1
    y.append(row[])

print(y)
실행 결과 예시
[50, 80, 110]
INTERACTIVE SHELL Shift + Enter 로 즉시 실행

🔍 음수 인덱스의 활용

파이썬에서는 리스트의 마지막 요소에 접근할 때 음수 인덱스를 사용할 수 있습니다.


양수 vs 음수 인덱스

data = ["기온", "습도", "판매량"]
양수 인덱스 0 1 2
요소 기온 습도 판매량
음수 인덱스 -3 -2 -1
  • data[2] → "판매량"
  • data[-1] → "판매량" (동일한 결과)

왜 음수 인덱스를 사용하는가?

실제 머신러닝 데이터셋에서 특성(X)이 수십 개가 되는 경우가 많습니다.

# 특성이 35개인 데이터
row = [값1, 값2, ..., 값35, 판매량]

# 양수 인덱스: 35번이 정답인지 세어봐야 함
y = row[35]  # 실수하기 쉬움

# 음수 인덱스: 항상 마지막
y = row[-1]  # 안전하고 확실함

핵심 정리

인덱스 의미 장점
row[0] 첫 번째 요소 항상 첫 번째
row[-1] 마지막 요소 데이터 길이와 무관하게 안전
row[-2] 뒤에서 두 번째 마지막 직전 요소 접근

머신러닝에서 정답(y)은 보통 데이터의 마지막 열에 위치하므로, row[-1]은 매우 자주 사용됩니다.