在本次的部落格中,我將展示一些 jupyter陣列與向量計算的常用語法。
import numpy as np
my_arr = np.arange(10000) #生成範圍為(0,9999)這10000個數字
my_list = list(range(10000))
%time for i in range(10): my_arr2 = my_arr*2
%time for i in range(10): my_list2 = [x * 2 for x in my_list]#輸出**執行的時間
data = np.random.randn(2,3)#生成2*3的隨機矩陣
data*10
data+data
data.shape #輸出為行數和列數
data.dtype #輸出為元素的資料型別
data.ndim #輸出為維度的數量
data.size #輸出為元素物件的個數
data.itemsize #物件中每個元素的大小,以位元組為單位
arr1 = np.array([1,2,3],dtype=np.float64)
arr2 = np.array([1,2,3],dtype=np.int32)
arr1.dtype
arr2.dtype#檢視資料型別
arr = np.array([1,2,3,4,5])
arr.dtype
float_arr = arr.astype(np.float64)#顯示轉換為浮點型
arr = np.array([3.7,-1.2,-2.6,5.4])
arr.astype(np.int32)#直接去掉小數點後面的數
numeric_strings = np.array([『1.25』,』-9.6』,『42』],dtype=np.string_)#陣列元素也可以是字串
numeric_strings
numeric_strings.dtype#輸出的「s4」為string型別,4個位元組
numeric_strings.astype(float)
#輸入2*3矩陣
data2 = [[1,2,3],[4,5,6]]
arr2 = np.array(data2)
np.zeros(10)
np.zeros((3,6))#生成3*6的零矩陣
np.empty((2,3,2))#生成乙個空的三維空間(值不定,所以使用前應先賦值)
m = np.arange(5)
np.ones_like(m)#將元素都變為1
a = np.eye(3)#生成維數為3的單位陣
np.ones((3,3))#生成全一矩陣
np.ones_like(a)#生成與矩陣a維數等都相同的1矩陣
a = np.linspace(1,10,4)#(起始數值,終止數值,分四份)
b = np.linspace(1,10,4,endpoint = false)#不輸出終止點
arr = np.arange(10)
arr[5]
arr[5:8] #切片
arr[5:8] = 12#將下標為5-7的元素賦值為12
arr_slice = arr[5:8].copy()#不改變原陣列的值
arr2d = np.array([[1,2,3],[4,5,6],[7,8,9]])#輸入乙個3*3矩陣
arr2d[2]#得到索引為2的行
arr2d[0][2]#輸出行索引為0列索引為2的元素
arr2d[0,2]
arr3d = np.array([[[1,2,3],[4,5,6]],[[7,8,9],[10,11,12]]])
arr3d.shape#輸出三個維度的大小
arr3d#輸出三維陣列
arr3d[0]#得到三維陣列的最外層
arr[1:3]#取第1,2個元素
arr2d[:2]#取0-1行陣列
arr2d[:2,1:]#行索引為0、1,列索引為1、2的元素
arr2d[1,:2]#行索引為1,列索引為0,1的元素
NumPy基礎 陣列和向量計算(二)
通用函式 numpy中可以使用一些通用函式對ndarray進行元素級別的運算,這些函式的元素比我們採用迴圈的方式對元素的逐一運算快很多,豐富的通用函式可以滿足很多運算的需求。以對所有元素進行開方為例。in arr np.arange 10 in arr out array 0,1,2,3,4,5,6...
Numpy中向量與標量計算
加減乘除冪運算 import numpy as np a np.array 1,2,3 b np.array 3,2,1 print a 10 對應位置依次相加 print a 2 print 1,2,3 2 print a b print a b print a b print a b print...
第四章 NumPy基礎 陣列和向量計算
ndarray 一種多維陣列物件 n dimension array 每個陣列都有乙個shape 和 dtype arange是python內建函式range的陣列版 np.arange 15 0,15 陣列建立函式中,asarray 將輸入轉換為array,如果輸入本身就是乙個ndarray,就不...