numpy學習之建立數組

1.使用array函數建立數組python

import numpy as np
ndarray1 = np.array([1, 2, 3])
array([1, 2, 3])
ndarray2 = np.array(list('abcd'))
array(['a', 'b', 'c', 'd'],
      dtype='<U1')
ndarray3 = np.array([[1, 2], [3, 4]])
array([[1, 2],
       [3, 4]])

2.zeros和zeros_like建立數組數組

用於建立數組,數組元素默認值是0. 注意:zeros_like函數只是根據傳入的ndarray數組的shape來建立全部元素爲0的數組,並非拷貝源數組中的數據函數

ndarray1 = np.zeros(6)
ndarray2 = np.zeros((2, 3))
ndarray3 = np.zeros_like(ndarray2)  # 按照 ndarray2 的shape建立數組
print("數組類型:")
print('ndarray1:', type(ndarray1))
print('ndarray2:', type(ndarray2))
print('ndarray3:', type(ndarray3))print("數組元素類型:")
print('ndarray1:', ndarray1.dtype)
print('ndarray2:', ndarray2.dtype)
print('ndarray3:', ndarray3.dtype)print("數組形狀:")
print('ndarray1:', ndarray1.shape)
print('ndarray2:', ndarray2.shape)
print('ndarray3:', ndarray3.shape)

輸出結果:
數組類型:
ndarray1: <class 'numpy.ndarray'>
ndarray2: <class 'numpy.ndarray'>
ndarray3: <class 'numpy.ndarray'>
數組元素類型:
ndarray1: float64
ndarray2: float64
ndarray3: float64
數組形狀:
ndarray1: (6,)
ndarray2: (2, 3)
ndarray3: (2, 3)

3.ones和ones_like建立數組spa

與zero相似code

# 建立數組,元素默認值是0
ndarray1 = np.ones(7)
ndarray2 = np.ones((2, 3))
# 修改元素的值
ndarray2[0][1] = 4
ndarray3 = np.ones_like(ndarray2)  # 按照 ndarray2 的shape建立數組
# 打印數組元素類型
print("數組類型:")
print('ndarray1:', type(ndarray1))
print('ndarray2:', type(ndarray2))
print('ndarray3:', type(ndarray3))print("數組元素類型:")
print('ndarray1:', ndarray1.dtype)
print('ndarray2:', ndarray2.dtype)
print('ndarray3:', ndarray3.dtype)print("數組形狀:")
print('ndarray1:', ndarray1.shape)
print('ndarray2:', ndarray2.shape)
print('ndarray3:', ndarray3.shape)

輸出結果:
數組類型:
ndarray1: <class 'numpy.ndarray'>
ndarray2: <class 'numpy.ndarray'>
ndarray3: <class 'numpy.ndarray'>
數組元素類型:
ndarray1: float64
ndarray2: float64
ndarray3: float64
數組形狀:
ndarray1: (7,)
ndarray2: (2, 3)
ndarray3: (2, 3)

4.empty和empty_like建立數組blog

用於建立空數組,空數據中的值並不爲0,而是未初始化的隨機值.class

ndarray1 = np.empty(5)
ndarray2 = np.empty((2, 3))
ndarray3 = np.empty_like(ndarray1)
# 打印數組元素類型
print("數組類型:")
print('ndarray1:', type(ndarray1))
print('ndarray2:', type(ndarray2))
print('ndarray3:', type(ndarray3))print("數組元素類型:")
print('ndarray1:', ndarray1.dtype)
print('ndarray2:', ndarray2.dtype)
print('ndarray3:', ndarray3.dtype)print("數組形狀:")
print('ndarray1:', ndarray1.shape)
print('ndarray2:', ndarray2.shape)
print('ndarray3:', ndarray3.shape)

輸出結果:
數組類型:
ndarray1: <class 'numpy.ndarray'>
ndarray2: <class 'numpy.ndarray'>
ndarray3: <class 'numpy.ndarray'>
數組元素類型:
ndarray1: float64
ndarray2: float64
ndarray3: float64
數組形狀:
ndarray1: (5,)
ndarray2: (2, 3)
ndarray3: (5,)

5.arange函數建立數組import

arange函數是python內置函數range函數的數組版本float

ndarray1 = np.arange(10)
print("ndarray1:",ndarray1)
ndarray2 = np.arange(10, 20)
print("ndarray2:",ndarray2)
ndarray3 = np.arange(10, 20, 2)
print("ndarray3:",ndarray3)

輸出結果:
ndarray1: [0 1 2 3 4 5 6 7 8 9]
ndarray2: [10 11 12 13 14 15 16 17 18 19]
ndarray3: [10 12 14 16 18]

6.eye建立對角矩陣數組numpy

該函數用於建立一個N*N的矩陣,對角線爲1,其他爲0.

ndarray1 = np.eye(3)
ndarray1
輸出結果:
array([[ 1.,  0.,  0.],
       [ 0.,  1.,  0.],
       [ 0.,  0.,  1.]])
相關文章
相關標籤/搜索