<코드>

데이터 라이브러리 NumPy

넘파이 — Python 프로그래밍 언어용 오픈 소스 라이브러리로 벡터, 행렬 및 배열 작업을 위한 많은 작업을 구현합니다. 

해석된 언어(예: Python)로 구현된 수학적 알고리즘은 종종 컴파일된 언어(예: Fortran, C, Java)로 구현된 것보다 훨씬 느립니다. NumPy라이브러리는 다차원 배열 작업에 최적화된 계산 알고리즘(함수 및 연산자 형식) 구현을 제공합니다. 
결과적으로 배열(행렬)에 대한 일련의 작업으로 표현될 수 있고 NumPy를 사용하여 구현될 수 있는 모든 알고리즘은 충분히 빠릅니다.

NumPy(Numeric Python)는 데이터 작업을 위한 핵심 수학 라이브러리입니다. 이 라이브러리는 기계 학습 또는 데이터 분석 작업 작업을 위한 다른 라이브러리의 기반이 됩니다(예: Pandas(표 형식 데이터 작업), SciPy(최적화 방법 및 과학적 계산), < tt>Matplotlib (플로팅)).

 

NumPy로 작업하기

numpy 라이브러리 작업을 시작하려면 다른 라이브러리와 마찬가지로 프로그램 시작 부분에서 가져와야 합니다. numpy 가져오기 또는 그렇게 (더 자주 사용됨) numpy를 np로 가져오기



넘파이 벡터

NumPy의
벡터(또는 배열)는 정렬된 동종 데이터 세트입니다.

벡터의 요소는 목록에서와 마찬가지로 인덱스로 액세스할 수 있습니다. 벡터의 각 요소에는 생성 중에 설정되는 고유한 특정 위치가 있습니다.
모든 벡터 요소는 동일한 데이터 유형(int, str, bool 등)을 가집니다.

벡터 만들기
벡터를 생성하려면 numpy.array 생성자(반복 가능한 객체)를 사용해야 합니다.
괄호는 튜플, 목록, 범위() 등 반복 가능한 개체를 나타냅니다.
 
예 
numpy를 np로 가져오기 numpy를 np로 가져오기 print(np.array((1,2,3,4,5))) # 튜플의 벡터 print(np.array([1,2,3,4,5])) # 목록의 벡터 print(np.array(range(5))) # 생성기의 벡터

벡터 요소 작업

벡터 요소로 작업하는 것은 목록 요소와 동일하며 인덱스로 요소에 액세스하고 조각을 만들 수도 있습니다.

<테이블> <몸>
1
2
삼
4
5
6
7
numpy를 np로 가져오기 V = np.array((1,2,3,4)) 인쇄(V[0]) # 1 인쇄(V[-1]) # 4 인쇄(V[1:-2]) # [2] 인쇄(V[::2]) # [1 3]
벡터 요소 선택
벡터 요소를 선택하려면 논리값(표현식)을 포함하는 벡터를 사용할 수 있습니다. 부울 값이 있는 벡터에서 True가 될 벡터 요소가 선택됩니다.
 

numpy를 np로 가져오기 V = np.array([1,-2,3,-4,5]) # 벡터의 처음 두 요소를 선택합니다. print(V[np.array((참, 참, 거짓, 거짓, 거짓))]) # [ 1 -2] # 양수 벡터 요소 선택 인쇄(V[V > 0]) # [1 3 5] # 짝수 벡터 요소 선택 인쇄(V[V % 2 == 0]) # [-2 -4]

배열 및 행렬 생성 방법

배열과 행렬을 만드는 다른 유용한 방법.

<테이블> <몸>
 1
 2
 삼
 4
 5
 6
 7
 8
 9
10
열하나
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
서른
31
32
33
34
35
36
37
numpy를 np로 가져오기 # 0의 1차원 배열 print(np.zero(5)) #[0. 0.0.0.0.] # 0의 2차원 배열 print(np.zeros((2, 3))) # [[0. 0.0.] #[0. 0.0.]] # 단위의 3D 배열 print(np.ones((2,3,4))) # [[[1. 1. 1. 1.] # [1. 1. 1. 1.] # [1. 1. 1. 1.]] # # [[1. 1. 1. 1.] # [1. 1. 1. 1.] # [1. 1. 1. 1.]]] # 유형 표시가 있는 0의 배열 인쇄(np.zeros(5, dtype=np.int)) # [0 0 0 0 0] # 목록 목록을 기반으로 하는 배열 print(np.array([[1,2.0],[0,0],(1,3.)])) # [[1. 2.] #[0. 0.] # [1. 삼.]] # 0부터 시작하는 산술 수열의 요소로 채워진 배열 인쇄(np.arange(10)) # [0 1 2 3 4 5 6 7 8 9] # 유형 표시가 있는 산술 수열 print(np.arange(2, 10, dtype=np.float)) # [2. 3. 4. 5. 6. 7. 8. 9.] # 정수가 아닌 차이가 있는 산술 수열 print(np.arange(2, 3, 0.1)) # [2. 2.1 2.2 2.3 2.4 2.5 2.6 2.7 2.8 2.9] # 주어진 수의 용어로 산술 진행 print(np.linspace(1., 4., 6)) # [1. 1.6 2.2 2.8 3.4 4. ]
제로 배열 요소
 
함수0이 아닌(V) 
결과는 배열의 튜플입니다. 이러한 각 배열은 원래 배열의 별도 축에 해당하며 이 배열에 0이 아닌 요소가 있는 인덱스를 포함합니다.
VNumPy배열 또는 유사 배열 객체.
Python 튜플(튜플)을 반환합니다. 원래 배열V의 0이 아닌 요소 인덱스 배열을 포함하는 튜플입니다.
 
함수count_nonzero(V) 
이 함수는 참인지 확인하는 Python 객체의 내장된  __bool__() 메서드를 기반으로 합니다. 따라서  count_nonzero() 함수는 실제로 숫자뿐만 아니라 참 또는 거짓일 수 있는 모든 개체와 함께 작동할 수 있습니다.
VNumPy배열 또는 유사 배열 객체.
이 함수는 지정된 축을 따라 0이 아닌 배열 요소의 수를 반환합니다.

대각선 배열

 diag(V, k=0) 함수를 사용하면 배열에서 대각선을 추출하고 1차원 배열에서 대각선 배열을 만들 수 있습니다.
V - 배열과 같은 개체, 2차원 또는 1차원 배열, 행렬, 목록 또는 튜플 또는 목록이나 튜플을 반환하는 메서드가 있는 모든 함수 또는 개체입니다.
k - 대각선의 인덱스(선택 사항).
기본값은 주 대각선에 해당하는 k = 0입니다. 양수 k 값은 대각선을 위로 이동하고 음수 값은 아래로 이동합니다.

이 함수는 배열 NumPy(ndarray) - 지정된 대각선 배열 또는 지정된 1차원 배열의 대각선 배열을 반환합니다.

2D NumPy 배열

2차원 배열의 요소는 요소의 좌표, 먼저 행 번호, 열 번호를 지정하여 액세스합니다. 좌표는 쉼표로 구분됩니다. 
모든 배열은 reshape(). 함수를 사용하여 2차원 배열로 변환할 수 있습니다.

<테이블> <몸>
1
2
삼
4
5
6
7
8
# reshape() 함수는 데이터를 변경하지 않고 배열의 모양을 변경합니다. x = np.arange(12).reshape(3, 4) 인쇄(x) # [[ 0 1 2 3] # [ 4 5 6 7] # [ 8 9 10 11]] # 요소에 액세스하려면 쉼표로 구분된 좌표를 지정하십시오. 인쇄(x[1, 2]) # 6