【Day 24】NumPy (1)

前言

NumPy 是一个提供矩阵运算的套件,他能很方便的计算线性代数,并且可以取代掉 Python 内建的 list。

他相当常被使用,在机器学习、深度学习、影像处理、人工智慧等领域都需要用到大量的矩阵运算,就会需要使用 NumPy 这个套件来加速我们的研究。

NumPy

在开始之前,需要先 import numpy,我们才能开始使用这个函式库内的函式。

因为在接下来的程序中,要使用这个套件的函式都需要用 numpy.函式名称来呼叫,所以为了让程序码更简短,所以把它代称为 np

import numpy as np

来建立第一个矩阵吧!

import numpy as np
x = np.array([1, 2, 3, 4, 5])    # 一维阵列
print(x)
print(type(x))

NumPy 的主要功能都架构在多重维度矩阵(N-dimensional array)上,称为 ndarray。


图片来源

y = np.array([[1, 2, 3, 4, 5], [6, 7, 8, 9, 10]])    # 建立二维矩阵

z = np.array([[[1, 2, 3, 4, 5], [6, 7, 8, 9, 10]], [[1, 2, 3, 4, 5], [6, 7, 8, 9, 10]]])    # 建立三维矩阵

array.ndim:查看矩阵的维度

a = np.array(42)
b = np.array([1, 2, 3, 4, 5])
c = np.array([[1, 2, 3], [4, 5, 6]])
d = np.array([[[1, 2, 3], [4, 5, 6]], [[1, 2, 3], [4, 5, 6]]])

print(a.ndim)
print(b.ndim)
print(c.ndim)
print(d.ndim)

ndmin:可以用来决定建立的矩阵维度

x = np.array([1, 2, 3, 4], ndmin=5)

print(x)
print(x.ndim)

建立矩阵并附上初始值的函式

np.zero([4, 5])    # 建立一个 4x5 全为 0 的矩阵
np.ones([2, 3])    # 建立一个 4x5 全为 1 的矩阵
np.arange(1, 10, 2)    # 建立一个 1 开始,最大到 10 一次加 2 的矩阵。
np.linspace(0, 6, 3)    # 建立一个 0 到 6 平均分成 3 份的矩阵 [0 3 6]
np.full([2, 3], 7)    # 建立一个 2x3 的矩阵,里面的元素全都去 7
np.eye(3)    # 建立一个 3x3 的单位矩阵
np.random.random([2, 3])    # 建立 2x3 的矩阵,元素的值为随机的

待续...


<<:  Day 29 JavaScript < 书写方式>

>>:  23. 如何开启一段职涯对话?

Alteryx使用案例║Mercedes-Benz 因疫情产线停摆无法交车怎麽办?

这近一个月的疫情高峰,相信你手头上会有很多突发的任务要处理 就像是这位 Mercedes-Benz ...

Seattle Web Design Agency

eGoodmedia is a Seattle web design agency, it is a...

[Day 11] 从零开始的 DenseNet 生活

0. 进度条 模型 进度 VGG Net (完成) ResNet (完成) DensNet (此篇)...

第二十七章、燃烧吧!Three.js 小宇宙!(伍)

前言 嗨大家好,今天是铁人赛的第 27 天,也是本系列 Three.js 最後一篇罗,照惯例,最後一...

Day19 - 铁人付外挂设定介面(一)- 资料库结构

在开始开发金流外挂的後台设定页面前,我们先来快速认识一下 WordPress 的资料表,同时介绍读取...