Numpy入門之數組運算四

集合運算

Numpy提供了針對數組的基本集合運算,常見的集合運算有交集、並集和差集

<code>arr1 = np.array([1, 2, 3, 1, 2, 3])
arr2 = np.array([1, 2, 5, 6])

arr = np.unique(arr1)\t#集合唯一值
arr = np.intersect1d(arr1, arr2)\t#求交集
arr = np.union1d(arr1, arr2)\t#求並集
arr = np.setdiff1d(arr1, arr2)\t#集合求差
arr = np.in1d(arr1, arr2)\t#判斷arr1中元素是否在arr2中,返回布爾型數組/<code>

線性代數運算

Numpy提供了線性代數的矩陣運算,常用於科學計算和機器學習

<code>arr1 = np.array([0, 1, 2, 3, 4])
arr2 = np.array([0, 2, 4, 6, 8])

arr = np.dot(arr1, arr2)\t#數組點積
arr = np.vdot(arr1, arr2)\t#向量點積
arr = np.matmul(arr1, arr2)\t#矩陣乘積
arr = np.inner(arr1, arr2)\t#數組內積/<code>
  • 注意數組和向量的區別,兩個不同的方面的概念
  • 上述方法完全可用於多維矩陣或數組
  • dot() 兩個數組的點積,即元素對應相乘
  • vdot() 兩個向量的點積
  • inner() 兩個數組的內積,內積只能用於兩個一維數組
  • matmul() 兩個數組的矩陣積
  • determinant() 數組的行列式
  • solve() 求解線性矩陣方程
  • inv() 計算矩陣的乘法逆矩陣

數組存儲於讀取

通過np.savetxt方法可以對數組進行存儲

<code>arr = np.random.randint(100, 200, size=(5, 6))
np.savetxt("arraysave.csv", arr, fmt="%d", delimiter=",")/<code>
  • 存儲文件格式是CSV
  • savetxt(“文件名”, 待存儲數組,fmt格式化字符串, delimiter分隔符)

通過np.loadtxt方法可以對數組進行讀取(只能讀取數值)

<code>arr = np.loadtxt("arraysave.csv", delimiter=",")/<code>
  • loadtxt(“文件名”, delimiter分隔符)


分享到:


相關文章: