티스토리 뷰
반응형
파이썬 numpy로 단위행렬, 대각 행렬 생성하는 방법과 대각 행렬 요소를 추출하는 방법을 정리해보겠습니다.
numpy에서 identity, eye, diag 함수를 제공합니다.
identity : n 단위 행렬 생성
eye : 대각 행렬 생성
diag : 대각선 요소 추출
identity
identity를 활용하면 필요한 number of rows의 단위행렬을 생성할 수 있습니다.
단위행렬이란 주 대각선 원소가 모두 1이며 나머지 원소는 0인 행렬을 말합니다.
np.identity(n=3, dtype=np.int8)
-- 출력 --
array([[1, 0, 0], [0, 1, 0], [0, 0, 1]], dtype=int8)
np.identity(5)
-- 출력 --
array([[1., 0., 0., 0., 0.],
[0., 1., 0., 0., 0.],
[0., 0., 1., 0., 0.],
[0., 0., 0., 1., 0.],
[0., 0., 0., 0., 1.]])
eye
대각선인 1인 대각행렬을 생성할 수 있습니다.
k는 값의 시작하는 index이며 필요에 따라 변경 가능합니다.
np.eye(N=3, M=5, dtype=np.int8)
-- 출력 --
array([[1, 0, 0, 0, 0],
[0, 1, 0, 0, 0],
[0, 0, 1, 0, 0]], dtype=int8)
np.eye(3)
-- 출력 --
array([
[1., 0., 0.],
[0., 1., 0.],
[0., 0., 1.]])
np.eye(3,5,k=2) # k - start index
-- 출력 --
array([[0., 0., 1., 0., 0.],
[0., 0., 0., 1., 0.],
[0., 0., 0., 0., 1.]])
diag
대각 행렬의 값을 추출하는 함수입니다.
지정한 k가 start index이며 k부터 대각선으로 요소를 추출합니다.
matrix = np.arange(9).reshape(3,3)matrix
-- 출력 --
array([[0, 1, 2], [3, 4, 5], [6, 7, 8]])
np.diag(matrix,k=1) # k - start index
-- 출력 --
array([1, 5])
반응형
'python' 카테고리의 다른 글
파이썬 numpy - array의 where, argmax, argmin (0) | 2020.02.14 |
---|---|
파이썬 numpy - array 사칙연산, 행렬 곱, Broadcasting (1) | 2020.02.11 |
파이썬 numpy - array 생성 함수 ones, zeros,empty (0) | 2020.02.07 |
[python] numpy Shape 이란? Shape다루기 (2) | 2020.02.06 |
[python] numpy array 특징과 사용법 (0) | 2020.02.05 |
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- CHATGOT
- 지도학습
- 노드
- numpy
- Node
- 퍼셉트론
- LeetCode 30일 챌린지
- LeetCode 풀이
- Java leetcode
- k8s metrics-server
- 30 Day LeetCode Challenge
- git
- 머신러닝
- react
- LeetCode 5월 챌린지
- Component
- Java
- 리엑트
- React 프로젝트 생성
- 버츄얼스튜디오코드
- 넘파이
- 에라토스테네스
- 파이썬
- vscode
- Python
- k8s metrics-server running
- 파이썬 numpy
- GPT서비스
- GPTGOT
- LeetCode 알고리즘 공부
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
글 보관함