일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- R
- scRNASeq
- numpy
- 선형대수
- journal meeting
- scanpy
- 통계학
- 오블완
- 대학원
- np.diagflat
- 대학생주식
- endothelial
- np.trace
- single cell rna sequening
- 넘파이 매서드
- pcrnaseq
- 대학생재테크
- 연구원
- single cell rna sequencing
- bioinformatics
- Tutorial
- Preprocessing
- liver
- 티스토리챌린지
- Python
- 주식
- np.triu
- 후기
- 주식투자
- np.flatten
- Today
- Total
biotechknowledge
[파이썬을 활용한 선형대수학] 행렬 및 벡터 표현과 입출력, 넘파이 행렬 생성 매서드 본문
행렬 및 벡터 표현과 입출력 방법
넘파이의 데이터타입은 실수를 표시하기 위한 float64 와 복소수를 표기할 수 있는 complex128 이 있다. np.array를 생성할 때, 명시적으로 지정하지 않으면 파이썬 에서 알아서 지정해주고, 데이터타입이 다른 array 의 곱이나 합을 하는 경우에도 지정된 룰에 따라서 dtype이 정해지게 되어있다. 예를들어, float64 인 와 complex인 array를 더한 새로운 array의 데이터타입은 complex가 된다. 모든 엔트리는 같은 dtype을 지녔다. 명시적으로 dtype을 써주는 습관을 갖는 것이 좋다.
행렬 및 벡터 모양 확인 메서드 : shape
array 의 데이터 타입 변환 메서드 : astype
a = [
[1-1j,2+1j,1,-3,6,-5],
[2-1j,1-1j,7,-2,-9,0],
[2,4,1+1j,-1,5,1],
[3,1,0,0,0,-14]
]
np.savetxt('out_pr1.txt',a, delimiter=',' ,fmt='%0.1e',dtype=np.complex128)
넘파이에서 허수는 i 대신 j 를 사용한다. 복소수는 실수부 + 허수부로 표현한다.
np.savetxt : 행렬 혹은 벡터 텍스트 파일로 출력
np.genfromtxt : text file 로부터 행렬 불러오기
- floating 포맷, 소수점 4자리 123.4567 : "%0.4f"
- scientific 포맷, 소수점 2자리 1.23e2 : "%0.2e"
b = np.genfromtxt('pr2_inp1.txt',delimiter=' ',dtype=np.float64)
b.shape
np.savetxt('output2.txt',b,delimiter=' ', fmt='%0.3e' )
넘파이에서 1,2,3 이 저장된 text 를 genfromtxt 로 불러오면 1d array 형태인 (3,) 형태로 가져온다.
행렬 관련 편리한 기능
eye / identity
tri
zeros / ones / full : shape 튜플 자료형을 받는다.
np.ramdom.rand : 자료형을 튜플로 받지 않는다, 0~1사이 무작위값으로 채워진다, dtype을 지정해 줄 수 없다.
a = np.identity(20,dtype=np.float64)
np.savetxt('savea', a, fmt='%0.1f')
a = np.random.rand(3,3)
matrix = 1j * a
print(matrix)
- 실수와 허수의 곱은 허수부만 존재하는 복소수를 만든다. 예시 : 3×4j=(3×4)j=12j
'IT.DT' 카테고리의 다른 글
[파이썬을 활용한 선형대수학] 행렬 기본 조작 (2) Numpy 패키지 함수 (stack, transpose, property, Norm, dot) (0) | 2024.12.22 |
---|---|
[파이썬을 활용한 선형대수학] 행렬 기본 조작 (매서드, 함수) (0) | 2024.12.22 |
Window PowerShell 로 워크스테이션 접속하면 jupyter lab 안 열리는 이유와 해결법 (4) | 2024.11.08 |
리눅스 워크스테이션 로그인 (WSL ubuntu, Windows Shell) (4) | 2024.11.08 |
Notion desktop app 마우스 커서 하얀색으로 나올 때 해결법 (2) | 2024.11.08 |