1)Методы класса ndarray

  • ndarray.ndim - количество измерений ил ранк матрицы
  • ndarray.shape - возвращает количество измерений по каждой из осей (n,m), где n - количество строк, m - количество столбцов
  • ndarray.size - количество элементов в массиве
  • ndarray.dtype - тип элементов массива
  • ndarray.itemsize - размер в байтах каждого элемента в массиве
  • ndarray.data - буфер, содержащий элементы массива

2)Создание массива

        
            import numpy as np
            a = np.array([2,3,4])
            a.dtype #dtype('int64')
            b = np.array([1.2, 3.5, 5.1])
            b.dtype #dtype('float64')

            #создание двухмерного массива
            b = np.array([(1.5,2,3), (4,5,6)])
            #создание трехмерного массива
            b = np.array([((1.5,0.1,2.0),(1.5,0.1,2.0)), ((1.5,0.1,2.0),(1.5,0.1,2.0))])
            #тип элементов может задан в момент создания
            c = np.array( [ [1,2], [3,4] ], dtype=complex )

            #генерация массивов
            np.zeros((3,4)) #cгенерировать массив с одними нулями
            np.ones((3,4)) #cгенерировать массив с одними нулями 
            np.empty((20,30,40,50,60)) #сгенерировать массив 5-мерный массив случайных чисел
            np.random.rand(2,2) #матрица случайных чисел
            np.random.randn(2,2) #нормально распределение случайных чисел

            #генерация последовательного массива чисел
            np.arange(10,30,5) #array([10, 15, 20, 25])
            np.arange( 0, 2, 0.3 ) #array([ 0. ,  0.3,  0.6,  0.9,  1.2,  1.5,  1.8])
            np.linspace( 0, 2, 9 ) #получить 9 элементов от 0 до 2
            #array([ 0.  ,  0.25,  0.5 ,  0.75,  1.  ,  1.25,  1.5 ,  1.75,  2.  ])
        
    

3)Простые операции

        
            a = np.array( [20,30,40,50] )
            b = np.arange( 4 )
            #разность массивов поэлементно
            c = a-b #array([0, 1, 2, 3])
            #возведение каждого элемента в квадрат
            b**2 #array([0, 1, 4, 9])
            #взять синус от каждого элемента и умножить на 10
            10*np.sin(a)
            #проверить, которые меньше
            a<35 #array([ True, True, False, False], dtype=bool)

            #произведения матриц
            a.dot(b)
            np.dot(A, B)

            #нахождение суммы,минимума и максимума
            a = np.random.random((2,3))
            a.sum()
            a.min()
            a.max()

            #применение методов на определенноv измерении
            b = np.arange(12).reshape(2,6)
            b.sum(axis=0) #сумма по первому измерению
            b.min(axis=1) #минимальный элемент по второму измерению
            b.cumsum(axis=1) #накопительная сумма по строкам