슬라이싱을 이용한 다중 특성 분리

40 P
QUESTION 10 #333
기온(0번), 습도(1번) 두 개의 열을 한꺼번에 슬라이싱하여 X 리스트에 담으려고 합니다. 빈칸에 적절한 범위를 입력하세요.
main.py
dataset = [[20, 70, 50], [25, 80, 80], [30, 85, 110]]
X = []

for row in dataset:
    # 0번부터 1번까지 가져오려면 종료 인덱스는 2
    X.append(row[])

print(X)
실행 결과 예시
[[20, 70], [25, 80], [30, 85]]
INTERACTIVE SHELL Shift + Enter 로 즉시 실행

✂️ 슬라이싱(Slicing) 마스터

슬라이싱은 리스트의 일부분을 잘라내는 기술입니다. 머신러닝에서 여러 개의 특성을 한꺼번에 추출할 때 필수적으로 사용됩니다.


기본 문법

리스트[시작:끝]
  • 시작 인덱스는 포함됩니다
  • 인덱스는 포함되지 않습니다 (가장 중요!)

예시로 이해하기

row = [20, 70, 50]
#      [0]  [1]  [2]

row[0:2]  # → [20, 70]  (0번, 1번)
row[0:1]  # → [20]      (0번만)
row[1:3]  # → [70, 50]  (1번, 2번)

슬라이싱 생략 규칙

문법 의미 예시
row[:2] 처음부터 1번까지 [20, 70]
row[1:] 1번부터 끝까지 [70, 50]
row[:] 전체 복사 [20, 70, 50]
row[:-1] 처음부터 마지막 직전까지 [20, 70]

머신러닝에서의 활용

dataset = [[20, 70, 50], [25, 80, 80], [30, 85, 110]]

# 특성(X) 추출: 마지막 열 제외
X = [row[:-1] for row in dataset]
# 결과: [[20, 70], [25, 80], [30, 85]]

# 정답(y) 추출: 마지막 열만
y = [row[-1] for row in dataset]
# 결과: [50, 80, 110]

row[0:2]row[:-1]은 이 데이터에서 동일한 결과를 만들지만, row[:-1]이 특성 개수에 상관없이 동작하므로 더 범용적입니다.