shape
기본적인 shape는
만약 m*n의 행렬인 A가 있다면
A.shape 가 나타내는 값은 (m, n)이다 #print(A.shape) 하면 (m,n)이 출력됨
코드 보다가 shape[0] 붙은게 있어서 이게 뭔가 해서 시험해봄
1.
import numpy as np
R = np.floor(10*np.random.random((2, 3))) # 10 이하의 숫자로 난수 생성해서 2*3 행렬 만들음
print(R)
print(R.shape[0])
print(R.shape[1])
출력 결과-------------------------------------------
[[6. 0. 5.]
[2. 1. 0.]]
2
3
------------------------------------------------------
shape[0] 은 행의 개수
shape[1] 은 열의 개수
인 것 같음
2. shape[2] 를 출력하면 범위 벗어나겠지 하고 시험해봄
import numpy as np
R = np.floor(10*np.random.random((2, 3))) # 10 이하의 숫자로 난수 생성해서 2*3 행렬 만들음
print(R)
print(R.shape[0])
print(R.shape[1])
print(R.shape[2])
출력 결과---------------------------------------------------------------------------------------------------
[[2. 3. 4.]
Traceback (most recent call last):
[9. 0. 9.]]
File "D:/Artive 9 Application/Python36/workspace/read_data/read_data.py", line 56, in <module>
2
print(R.shape[2])
3
IndexError: tuple index out of range
-------------------------------------------------------------------------------------------------------
벗어남
3. 그럼 애초에 2차행렬이 아니고 3차 행렬 같은 걸로 바꾸면 (이 표현이 맞나?)
import numpy as np
R = np.floor(10*np.random.random((2, 3, 4))) # 10 이하의 숫자로 난수 생성해서 2*3 행렬 만들음
print(R)
print(R.shape[0])
print(R.shape[1])
print(R.shape[2])
예상 출력 결과는
R.shape[2] 가 4값을 나타낼 거라는 것
출력 결과 --------------------------------------------
[[[3. 4. 4. 1.]
[6. 2. 6. 5.]
[6. 5. 5. 4.]]
[[5. 0. 3. 8.]
[1. 9. 0. 6.]
[5. 4. 2. 2.]]]
2
3
4
------------------------------------------------------------
2개의 3*4행렬이 생겼음 // 덤으로 N차 행렬이 생성되는 구조도 알게 되었음
그리고 예상대로 4 출력 되었음
'python' 카테고리의 다른 글
파이썬 2일차(파이썬 자료구조 개념설명, 리스트, 문자열 메소드,lambda, map) (0) | 2020.08.19 |
---|---|
파이썬 수업 1일차(모듈 호출방법, print 및 % 출력전달 방식) (0) | 2020.08.19 |
(우분투 리눅스 )(아나콘다) 파이썬 라이브러리 확인 및 라이브러리 추가 (0) | 2018.05.31 |