Numpy(넘파이)_2

김현희·2026년 4월 14일

1.행벡터, 열벡터, 단위벡터
2. 다양한 배열 생성 방법 보충
3.인덱싱과 슬라이싱으로 필요한 정보 추출
3-1. 조건부 인덱싱 (Boolean Indexing) :특정 조건을 만족하는 원소들을 한번에 선택
4. 기본 통계 함수 보충
4-1. argmin과 argmax
5. 행렬 모양(차원) 바꾸기
5-1. -1의 의미
6. Numpy 연산 보충
7.내적과 행렬곱
8. 행렬 전치(Transpose)
9.가중합(Weighted Sum)
9-1. 편향(Bias)

1. 행벡터, 열벡터, 단위벡터

  • 행벡터 (Row Vector) : 가로 방향 벡터. -> 데이터가 한 줄로 나열, shape: (1, n)
  • 열벡터 (Column Vector) : 세로 방향 벡터 -> 데이터가 세로로 쌓임, shape: (n, 1)
  • 단위벡터 (Unit Vector) : 길이가 1인 벡터

2. 다양한 배열 생성 방법 보충

  • np.zeros(shape): 모든 요소가 0인 배열 생성
  • np.ones(shape): 모든 요소가 1인 배열 생성
  • 특정 숫자로만 행열을 채우는 방법
  1. np.ones((행,열))x채우고 싶은 숫자
  2. np.full((행,열),숫자)
  • np.arange(start, stop, step): 연속된 숫자 배열 생성

3.인덱싱과 슬라이싱으로 필요한 정보 추출

  • 필요한 데이터만 선별해서 추출할 수 있음
  • 인덱싱: 특정 위치의 하나의 값 추출 -> array[행, 열]
  • 슬라이싱: 연속된 여러 값을 범위로 추출 -> array[시작:끝]
  • 전체 선택: 콜론(:) 사용으로 해당 차원의 모든 데이터 선택

3-1. 조건부 인덱싱 (Boolean Indexing) :특정 조건을 만족하는 원소들을 한번에 선택

  • Boolean 마스크: 조건 결과로 True/False 배열 생성
  • 마스크 적용: True 데이터만 추출

4. 기본 통계 함수 보충

  • 평균값 : np.mean( )
  • 표준편차 : np.std( )

4-1. argmin과 argmax

  • argmin과 argmax는 값이 아니라 위치(인덱스)를 찾아주는 함수
  • 의료 데이터에서 "어떤 환자가 가장 높은/낮은 수치를 가지고 있는지"를 빠르게 식별할 때 매우 유용
  1. argmin: 배열에서 최솟값이 위치한 인덱스 반환
  2. argmax: 배열에서 최댓값이 위치한 인덱스 반환

개념 차이 (한 줄 정리)

  • max, min -> 값(value)을 반환
  • argmax, argmin -> 위치(index)를 반환

5. 행렬 모양(차원) 바꾸기

  • .reshape(행, 열) : 데이터를 바꾸는 게 아니라 "배치만 다시 하는 것
  • ravel() : 배열을 1차원으로 “쭉 펴는” 함수
  • vstack() (vertical stack): 세로로 쌓기 (위 → 아래), 열 개수는 같아야 함
  • hstack() (horizontal stack) : 가로로 붙이기 (왼쪽 → 오른쪽)
  • vsplit() (vertical split) : 세로 방향으로 나눔 = 행 기준으로 자름
  • hsplit() (horizontal split) : 가로 방향으로 나눔 = 열 기준으로 자름

5-1. -1의 의미

  • 이 자리 값은 네가 알아서 계산하라는 의미 (총 개수 맞게)
  • 단 한번만 쓸 수 있음
    (ex) np.arange(1, 9).reshape(-1, 2) --> (4, 2)로 계산되서 출력됨.


6. Numpy 연산 보충

  • np.add( , ) -> 두 행렬 더하기
  • np.subtract( , ) -> 두 행렬 빼기 (먼저 입력된 행렬을 기준으로 빼기 계산됨)

7.내적과 행렬곱

  • AI 예측의 핵심: 환자 정보 × 가중치 벡터
  • 환자의 정보와 AI가 학습한 가중치를 곱해서 예측값을 계산
  1. 행렬×행렬
  2. .dot(행렬,행렬)
  • 대응 원소끼리 곱해서 더한 값들로 출력됨 (즉 곱하기 연산이랑 결과 값이 다름)

8. 행렬 전치(Transpose)

  • 행과 열의 위치를 서로 바꾸는 연산
  • 위치 변환: (행, 열) → (열, 행)으로 좌표가 바뀜
    • 원본 [0, 1] 위치 → [1, 0] 위치
  • 형태 변환: (m×n) 행렬 → (n×m) 행렬로 변환
    • 예: (3×4) → (4×3), (5×2) → (2×5)
  • 사용 목적: 행렬곱에서 shape 맞추기, 데이터 구조 변경 (환자별 -> 특성별)
  • 표기법: array.T 또는 np.transpose(array)

9. 가중합(Weighted Sum)

  • AI가 여러 정보를 종합해서 하나의 예측값을 만드는 가장 기본적인 방법
  • 각 정보에 중요도(가중치)를 곱해서 모두 더하는 것

9-1. 편향(Bias)

  • 모든 입력이 0일 때도 가지는 기본값
  • 의료에서는 "기초 상태"라고 생각
profile
AI 헬스케어 공부하는 간호사

0개의 댓글