人工智慧系列3 Numpy的科學計算

2021-10-03 03:26:45 字數 1894 閱讀 2251

python 中經常會使用 numpy 庫來做科學計算。numpy 的本質就是建立出多維陣列,可使用 numpy 提供的各種科學計算方法對陣列進行計算。

import numpy as np

# 建立一維陣列

arr1 = np.array([1, 2, 3])

# 建立二維陣列

arr2 = np.array([[1, 2], [3, 4]])

通過 numpy 的 array() 方法,就可以建立出多維陣列。這樣的陣列也稱之為 numpy 物件,每個 numpy 物件都有兩個屬性,乙個是 shape ,另乙個是 dtype 。

訪問 numpy 的 shape 屬性可以獲得陣列的形狀,示例如下:

import numpy as np

arr1 = np.array([1, 2, 3])

arr2 = np.array([[1, 2, 3], [4, 5, 6]])

arr3 = np.array([[1], [2], [3]])

arr4 = np.array([[[1, 2], [3, 4]], [[5, 6], [7, 8]]])

print(arr1.shape) # (3,)

print(arr2.shape) # (2, 3)

print(arr3.shape) # (3, 1)

print(arr4.shape) # (2, 2)

根據結果可知,所謂陣列的形狀,就是指每一維元素的個數。以 arr2 為例,這是乙個二維陣列,它的第一維度(行)的元素個數為 2,第二維度(列)的元素個數為 3,所以結果就是 (2, 3) 。

訪問 numpy 的 dtype 屬性可以獲得陣列的型別,示例如下:

import numpy as np

arr1 = np.array([1, 2, 3])

arr2 = np.array([1, 2, 3.2])

arr3 = np.array(['a', 5.0, 3])

arr4 = np.array([['a', 'b'], [5, 6]])

print(arr1.dtype) # int32

print(arr2.dtype) # float64

print(arr3.dtype) # 根據結果可知,當陣列中只有整數和浮點數時,numpy 會將整數全部轉為浮點數 。當陣列中存在字串時,numpy 會將所有元素全部轉為字串。其中,對於二維陣列 arr 而言,各訪問方式的含義如下:

對於 n 維陣列來說,訪問方式如下:

arr[第一維度位置, 第二維度位置, 第三維度位置, …, 第n維度位置]

numpy 有兩個較為相近的形狀變換方法,分別是 reshape() 和 resize() 。

使用示例及區別如下:

import numpy as np

arr = np.array([

[1, 2, 3],

[4, 5, 6],

[7, 8, 9]

])print(arr.shape) # (3, 3)

print(arr.reshape(1, 9)) # [[1 2 3 4 5 6 7 8 9]]

print(arr.shape) # (3, 3)

print(arr.resize(1, 9)) # none

print(arr.shape) # (1, 9)

根據結果得出的區別如下表:

是否改變原陣列

返回值reshape()

否處理之後的新陣列

resize()

是none

未完。。。

pyhton學習 人工智慧學習 NumPy

2020年6月9日23 09 24最後一次更新numpy numerical python 是 python 語言的乙個擴充套件程式庫,支援大量的維度陣列與矩陣運算,此外也針對陣列運算提供大量的數學函式庫。numpy 是乙個執行速度非常快的數學庫,主要用於陣列計算,包含 背景 我是一開始在pycha...

21天實戰人工智慧系列 人工智慧產品經理最佳實踐

感謝關注天善智慧型,走好資料之路 歡迎關注天善智慧型,我們是專注於商業智慧型bi,人工智慧ai,大資料分析與挖掘領域的垂直社群,學習,問答 求職一站式搞定!課程名稱 21天實戰人工智慧系列 人工智慧產品經理最佳實踐 課程目標 洞察ai業務能力 熟悉ai基礎理論 發展趨勢 面臨問題和當前現狀 熟悉ai...

Python人工智慧常用庫Numpy使用入門

2.1 陣列 2.2 陣列索引操作 indexing 陣列索引 a np.array 1,2,3,4 5,6,7,8 9,10,11,12 2代表陣列的倒數第二行 1 3代表從第一列開始往後兩個元素a 2 1 3 out array 6,7 10,11 取倒數第二行 第三列元素a 2,3 out 8...