请在终端机底下输入这个,谢谢
pip install numpy
像这样
import numpy as np
np是世俗公认的numpy简称,如果要使用其他numpy的别名,请三思而後行
相较於python的list,他们最大的差别就是list能够储存不同资料型态的资料,而NumPy阵列只能储存相同的资料型态,但效能带来的极致体验,还是让NumPy在处理大量资料中独霸一方,阵列操作可以说是NumPy招牌,其特色为同质且支援多重维度的ndarray
物件,这个物件的三个重要属性分别为:
维度(ndim)
形状(shape)
资料型态(dtype)
一般我们称一维阵列为vector而二维阵列为matrix,使用方法如下
# 载入numpy模组
import numpy as np
if __name__ == "__main__":
# 以列表来建立numpy阵列
l1 = [12, 14, 0, 5, 23]
a1 = np.array(l1)
l2 = [17, -5, 28, 5, 6]
a2 = np.array(l2)
# 阵列相加
print(a1 + a2)
# [29 9 28 10 29]
# 显示重要属性
print(a1.ndim)
# 1 => 一维阵列
print(a1.shape)
# (5,) => 五个元素
print(a1.dtype)
# int64 => 资料型态
# 存取资料
print(a1[3])
# 5 # 载入numpy模组
import numpy as np
if __name__ == "__main__":
# 以列表来建立numpy阵列
l1 = [12, 14, 0, 5, 23]
a1 = np.array(l1)
l2 = [17, -5, 28, 5, 6]
a2 = np.array(l2)
# 阵列相加
print(a1 + a2)
# [29 9 28 10 29]
# 显示重要属性
print(a1.ndim)
# 1 => 一维阵列
print(a1.shape)
# (5,) => 五个元素
print(a1.dtype)
# int64 => 资料型态
import numpy as np
if __name__ == "__main__":
# 以列表来建立numpy阵列
l1 = [12, 14, 0, 5, 23, 3]
a1 = np.array(l1)
print(a1)
# [12, 14, 0, 5, 23, 3]
# 显示重要属性
print(a1.ndim)
# 1 => 一维阵列
print(a1.shape)
# (6,) => 六个元素
print(a1.dtype)
# int64 => 资料型态
# 维度转换
a1 = a1.reshape([2, 3])
print(a1)
# [[12 14 0] [ 5 23 3]]
# 显示重要属性
print(a1.ndim)
# 2 => 二维阵列
print(a1.shape)
# (2, 3) => 2*3个元素
print(a1.dtype)
# int64 => 资料型态
import numpy as np
if __name__ == "__main__":
# 以列表来建立numpy阵列
l1 = [12, 14, 0, 5, 23, 3]
a1 = np.array(l1)
print(a1)
# [12, 14, 0, 5, 23, 3]
print(a1.dtype)
# int64 => 资料型态
# 转换资料型态
a1 = a1.astype("float32")
print(a1)
# [12. 14. 0. 5. 23. 3.]
print(a1.dtype)
# float32 => 资料型态
import numpy as np
if __name__ == "__main__":
# 以列表来建立numpy阵列
l1 = [12, 14, 0, 5, 23, 3]
a1 = np.array(l1)
print(a1)
# [12, 14, 0, 5, 23, 3]
print(a1[0:3])
# 从第0个开始取,取到第3个之後不取
# [12 14 0]
print(a1[4:6])
# 从第4个开始取,取到第6个之後不取
# [23 3]
import numpy as np
if __name__ == "__main__":
# 以列表来建立numpy阵列
l1 = [12, 14, 0, 5, 23, 3]
a1 = np.array(l1)
print(a1)
# [12, 14, 0, 5, 23, 3]
# 用布林遮罩来过滤资料
mask = a1 % 2 == 0
print(mask)
# [ True True True False False False]
print(a1[mask])
# [12 14 0]
今天我们要来研究一下NumPy多维阵列,先从一点简单的开始,二维阵列,俗称矩阵(matrix),
import numpy as np
if __name__ == "__main__":
# 以二维列表来建立numpy二维阵列
l1 = [[12, 14, 0], [5, 23, 3]]
a1 = np.array(l1)
l2 = [[34, 17, 97], [83, 18, 34]]
a2 = np.array(l2)
print(a1)
# [[12 14 0] [ 5 23 3]]
print(a2)
# [[34 17 97] [83 18 34]]
#矩阵加法
print(a1 + a2)
#[[46 31 97] [88 41 37]]
#矩阵减法
print(a1 - a2)
#[[-22 -3 -97] [-78 5 -31]]
#元素乘积(不是矩阵乘法)
print(a1 * a2)
#[[408 238 0] [415 414 102]]
#矩阵除法
print(a1 / a2)
#[[0.35294118 0.82352941 0. ] [0.06024096 1.27777778 0.08823529]]
矩阵转置会将栏和列互换
import numpy as np
if __name__ == "__main__":
# 以二维列表来建立numpy二维阵列
l1 = [[12, 14, 0], [5, 23, 3]]
a1 = np.array(l1)
print(a1)
# [[12 14 0]
# [ 5 23 3]]
# 矩阵转置
print(a1.T)
# [[12 5]
# [14 23]
# [ 0 3]]
注意矩阵点积需要第一个矩阵的栏数等於第二个矩阵的列数喔
import numpy as np
if __name__ == "__main__":
# 以二维列表来建立numpy二维阵列
l1 = [[12, 14, 0], [5, 23, 3]]
a1 = np.array(l1)
l2 = [[34, 17, 97], [83, 18, 34], [44, 19, 22]]
a2 = np.array(l2)
print(a1)
# [[12 14 0]
# [ 5 23 3]]
print(a2)
# [[34 17 97]
# [83 18 34]
# [44 19 22]]
# 矩阵点积
print(a1.dot(a2))
# [[1570 456 1640]
# [2211 556 1333]]
print(a2.dot(a1))
# 报错 a2的栏数是3 a1的列数是2
import numpy as np
if __name__ == "__main__":
# 以二维列表来建立numpy二维阵列
l1 = [[12, 14, 0], [5, 23, 3]]
a1 = np.array(l1)
l2 = [[34, 17, 97], [83, 18, 34], [44, 19, 22]]
a2 = np.array(l2)
print(a1)
# [[12 14 0]
# [ 5 23 3]]
print(a2)
# [[34 17 97]
# [83 18 34]
# [44 19 22]]
# 矩阵内积
print(np.inner(a1,a2))
# [[ 646 1248 794]
# [ 852 931 723]]
import numpy as np
if __name__ == "__main__":
# 以二维列表来建立numpy二维阵列
l1 = [[12, 14, 0], [5, 23, 3]]
a1 = np.array(l1)
l2 = [[34, 17, 97], [83, 18, 34], [44, 19, 22]]
a2 = np.array(l2)
print(a1)
# [[12 14 0]
# [ 5 23 3]]
print(a2)
# [[34 17 97]
# [83 18 34]
# [44 19 22]]
# 矩阵外积
print(np.outer(a1,a2))
# [[ 408 204 1164 996 216 408 528 228 264]
# [ 476 238 1358 1162 252 476 616 266 308]
# [ 0 0 0 0 0 0 0 0 0]
# [ 170 85 485 415 90 170 220 95 110]
# [ 782 391 2231 1909 414 782 1012 437 506]
# [ 102 51 291 249 54 102 132 57 66]]
>>: 从 IT 技术面细说 Search Console 的 27 组数字 KPI (23) :KPI 总表
收集完大数据,管理与查找大数据的工具也同等重要,譬如我想知道我某天去某间咖啡厅点了什麽饮料,即使手机...
大家好~ 我是五岁~~ 我要来尝试画些比较细致(复杂?)的东西~ 今天就来画画看九尾狐小妹妹吧~~ ...
今天要利用之前学到的东西写一个猜数字游戏,此猜数字游戏要符合以下条件: 1 猜数字范围介於0-99间...
细数一下之前实作的API功能,有建立订单以及选择支付方式(ATM虚拟帐号、信用卡付款),拿到永丰AP...
25 - Design Pattern(5) - Service Object Service 相对...