python 에서 numpy 패 키 지 는 튜 토리 얼 의 배열 과 관련 된 조작 에 대한 상세 한 설명 을 사용 합 니 다.

머리말
모두 가 알 고 있 을 것 입 니 다.다음은 Numpy,NumPy(Numerical Python)는 과학 계산 제3자 에 사용 되 는 Python 가방 입 니 다.
NumPy 는 매트릭스 데이터 형식,벡터 처리,정밀 한 연산 라 이브 러 리 등 많은 고급 수치 프로 그래 밍 도 구 를 제공 합 니 다.엄격 한 디지털 처 리 를 위해 서다.다음은 python 에서 numpy 패키지 사용 튜 토리 얼 의 배열 과 관련 된 작업 에 관 한 내용 을 상세 하 게 소개 할 것 입 니 다.다음은 더 이상 말 하지 않 고 상세 한 소 개 를 살 펴 보 겠 습 니 다.
1.배열 안내
Numpy 에서 가장 중요 한 데이터 구 조 는 다 차원 배열 유형numpy.ndarray이다.
ndarray 는 두 부분 으로 구성 되 어 있 습 니 다.
  • 실제 보유 한 데이터;
  • 이 데 이 터 를 묘사 하 는 메타 데이터(metadata)
  • 배열(즉 행렬)의 차원 은 axes 라 고 불 리 며,위 수 는 rank 이 라 고 부른다.
    ndarray 의 중요 한 속성 은: 
  • ndarray.ndim:배열 의 비 수 는 rank
  • 이 라 고도 부른다.
  • ndarray.shape:배열 의 각 차원 의 크기 는 n 행 m 열의 행렬 에 있어 shape 는(n,m)
  • 이다.
  • ndarray.size:원소 의 총수.
  • ndarray.dtype:각 요소 의 유형 은 numpy.int 32,numpy.int 16,and numpy.float 64 등
  • 일 수 있 습 니 다.
  • ndarray.itemsize:모든 요소 가 차지 하 는 바이트 수 입 니 다.
  • ndarray.data:데이터 메모리 지향.
  • 2.배열 의 사용
    numpy 를 사용 하기 전에 모듈 을 가 져 오고 아래 문 구 를 사용 하여 모듈 을 가 져 옵 니 다.
    
    improt numpy as np #  np numpy   ,        
    1.array 방법 으로 배열 생 성
    array,즉 배열 입 니 다.numpy 에서 가장 기본 적 인 데이터 구조 입 니 다.가장 관건 적 인 속성 은 차원 과 요소 유형 입 니 다.numpy 에서 다양한 유형의 다 차원 배열 을 편리 하 게 만 들 수 있 고 기본 적 인 기본 작업 을 수행 할 수 있 습 니 다.배열 을 만 드 는 방법 은 몇 가지 가 있 습 니 다.
    list 나 tuple 변수 로 배열 을 만 듭 니 다:
    
    >>> print np.array([1,2,3,4]) 
    [1 2 3 4] 
    >>> print np.array((1.2,2,3,4)) 
    [ 1.2 2. 3. 4. ] 
    list 나 tuple 변 수 를 요소 로 하여 2 차원 배열 이나 다 차원 배열 을 만 듭 니 다.
    
    >>> x = np.array(((1,2,3),(4,5,6))) 
    >>> x 
    array([[1, 2, 3], 
     [4, 5, 6]]) 
    >>> y = np.array([[1,2,3],[4,5,6]]) 
    >>> y 
    array([[1, 2, 3], 
     [4, 5, 6]]) 
    2.numpy.arange 방법 으로 배열 생 성
    
    >>> print np.arange(15) 
    [ 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14] 
    >>> print type(np.arange(15)) 
    <type 'numpy.ndarray'> 
    3.내 장 된 함수 로 특수 행렬 생 성(배열)
    제로 매트릭스
    
    >>> print np.zeros((3,4)) 
    [[ 0. 0. 0. 0.] 
     [ 0. 0. 0. 0.] 
     [ 0. 0. 0. 0.]] 
    행렬
    
    >>> print np.ones((3,4)) 
    [[ 1. 1. 1. 1.] 
     [1. 1. 1. 1.] 
     [ 1. 1. 1. 1.]] 
    단위 행렬
    
    >>> print np.eye(3) 
    [[ 1. 0. 0.] 
     [0. 1. 0.] 
     [ 0. 0. 1.]] 
    4.색인 과 절편
    
    >>> x = np.array(((1,2,3),(4,5,6))) 
    >>> x[1,2] #           
    6 
    
    >>> y=x[:,1] #      
    >>> y 
    array([2, 5]) 
    python 문법 과 일치 합 니 다.예 를 들 지 않 습 니 다.
    5.배열 속성 가 져 오기
    
    >>> a = np.zeros((2,2,2)) 
    >>> print a.ndim #      
    3 
    >>> print a.shape #         
    (2, 2, 2) 
    >>> print a.size #       
    8 
    >>> print a.dtype #     
    float64 
    >>> print a.itemsize #           
    8 
    6.배열 변환
    다 차원 에서 1 차원 으로 전환:
    
    >>> x 
    array([[1, 2, 3], 
      [4, 5, 6]]) 
    >>> x.flatten() 
    array([1, 2, 3, 4, 5, 6]) 
    1 차원 에서 다 차원 으로 전환:
    
    >>> print np.arange(15).reshape(3,5) #    ,           
    [[ 0 1 2 3 4] 
     [ 5 6 7 8 9] 
     [10 11 12 13 14]] 
    전환:
    
    >>> x 
    array([[1, 2, 3], 
      [4, 5, 6]]) 
    >>> x.transpose() 
    array([[1, 4], 
      [2, 5], 
      [3, 6]]) 
    7.배열 조합
    수평 조합:
    
    >>> y=x 
    >>> numpy.hstack((x,y)) 
    array([[1, 2, 3, 1, 2, 3], 
      [4, 5, 6, 4, 5, 6]] 
    수직 조합
    
    >>> numpy.vstack((x,y)) 
    array([[1, 2, 3], 
      [4, 5, 6], 
      [1, 2, 3], 
      [4, 5, 6]]) 
    concatenate 함수 로 이 두 가지 방식 을 동시에 실현 할 수 있 습 니 다.axis 인 자 를 지정 하여 기본 값 은 0,수직 조합 입 니 다.
    
    >>> numpy.concatenate((x,y)) 
    array([[1, 2, 3], 
      [4, 5, 6], 
      [1, 2, 3], 
      [4, 5, 6]]) 
    >>> numpy.concatenate((x,y),axis=1) 
    array([[1, 2, 3, 1, 2, 3], 
      [4, 5, 6, 4, 5, 6]]) 
    8.배열 분할
    수직 분할
    
    >>> z 
    array([[1, 2, 3], 
      [4, 5, 6], 
      [1, 2, 3], 
      [4, 5, 6]]) 
    >>> numpy.vsplit(z,2) #                     
    [array([[1, 2, 3], 
      [4, 5, 6]]), array([[1, 2, 3], 
      [4, 5, 6]])] 
    수평 분할
    
    >>> numpy.hsplit(z,3) 
    [array([[1], 
      [4], 
      [1], 
      [4]]), array([[2], 
      [5], 
      [2], 
      [5]]), array([[3], 
      [6], 
      [3], 
      [6]])] 
    split 함수 로 이 두 가지 효 과 를 동시에 실현 할 수 있 습 니 다.axis 매개 변수 차 이 를 설정 하여 조합 과 유사 합 니 다.여 기 는 프 리 젠 테 이 션 이 아 닙 니 다.
    행렬
    위 에서 배열 에 대한 조작 을 통 해 알 수 있 듯 이 numpy 에서 배열 을 통 해 행렬 을 모 의 할 수 있 지만 numpy 도 행렬 을 전문 적 으로 처리 하 는 데이터 구조 인 matrix 가 있다.
    1.행렬 생 성
    
    >>> numpy.mat('1 2 3;4 5 6;7 8 9') 
    matrix([[1, 2, 3], 
      [4, 5, 6], 
      [7, 8, 9]]) 
    2.배열 매트릭스 전환
    매트릭스 트랜스 퍼 그룹
    
    >>> m=numpy.mat('1 2 3;4 5 6;7 8 9') 
    >>> numpy.array(m) 
    array([[1, 2, 3], 
      [4, 5, 6], 
      [7, 8, 9]]) 
    배열 회전 행렬
    
    >>> n=numpy.array(m) 
    >>> numpy.mat(n) 
    matrix([[1, 2, 3], 
      [4, 5, 6], 
      [7, 8, 9]]) 
    3.매트릭스 방법
    구 역:
    
    >>> m.I 
    matrix([[ -4.50359963e+15, 9.00719925e+15, -4.50359963e+15], 
      [ 9.00719925e+15, -1.80143985e+16, 9.00719925e+15], 
      [ -4.50359963e+15, 9.00719925e+15, -4.50359963e+15]]) 
    총결산
    이상 은 이 글 의 전체 내용 입 니 다.본 논문 의 내용 이 여러분 의 학습 이나 업무 에 어느 정도 도움 이 되 기 를 바 랍 니 다.궁금 한 점 이 있 으 시 면 댓 글 을 남 겨 주 십시오.저희 에 대한 지지 에 감 사 드 립 니 다.

    좋은 웹페이지 즐겨찾기