[Python]numpy数组
数组的创建
import numpy as np
import random
t1 = np.array([1,2,3])
print([1,2,3])
print(t1)
print(type(t1))
t2 = np.array(range(10))
print(t2)
t3 = np.arange(10)
print(t3)
t4 = np.arange(4,10,2)
print(type(t4))
print(t4)
# 查看numpy数组中存放的数据是什么类型
print(t4.dtype)
t5 = np.array(range(1,4),dtype="float")
print(t5.dtype)
t6 = np.array(range(1,4),dtype = "float32")
print(t6.dtype)
# numpy中的bool类型
t7 = np.array([1,1,0,1,0,0],dtype = bool)
print(t7.dtype)
# 调整数据类型
t8 = t7.astype("int8")
print(t8.dtype)
# numpy中的小数
t9 = np.array([random.random() for i in range(10)])
print(t9)
print(t9.dtype)
t10 = np.round(t9,2)
print(t10)
运行结果:

数组的计算
example 01
import numpy as np
t1 = np.arange(12)
print(t1)
print(t1.shape)
t2 = np.array([[1,2,3],[4,5,6]])
print(t2.shape)
print("---------------------------------------------------")
t3 = np.array([[[1,2,3],[4,5,6]],[[7,8,9],[10,11,12]]])
print(t3)
print(t3.shape)
t4 = np.arange(12)
print(t4)
print("t4 shape = ",t4.shape)
print("---------------------------------------------------")
t4 = t4.reshape((3,4))
print(t4)
print("new t4 shape = ",t4.shape)
# 我的理解 2块3行4列
t5 = np.arange(24).reshape((2,3,4))
print(t5)
print(t5.shape)
print("---------------------------------------------------")
t5 = t5.reshape((4,6))
print(t5)
print("-----------------------------------------------------")
# 一维数组
t5 = t5.reshape((24,))
print(t5)
print("----------------------------------------------------")
# 二维数组
t5 = t5.reshape((1,24))
print(t5)
print("----------------------------------------------------")
# ravel() 直接变成一维数组
t5 = t5.ravel()
print(t5)
print("----------------------------------------------------")
t5 = t5.reshape((4,3,2))
print(t5)
# flatten() 直接变成一维数组
t5 = t5.flatten()
print(t5)
print("----------------------start--------------------------")
t5 = t5.reshape((4,6))
print(t5)
# 数组里面的全部元素+2
print(t5 + 2)
print(t5 * 2)
print(t5 /2)
# nan = not a number(无效数字)
# inf = infinite(无穷大)
print(t5 / 0)
example 02
import numpy as np
t1 = np.arange(0,24).reshape((4,6))
t2 = np.arange(100,124).reshape((4,6))
print(t1)
print(t2)
print(t1 + t2)
t3 = np.arange(0,6)
print(t1 - t3)
t4 = np.arange(4).reshape((4,1))
print(t4)
print(t1 - t4)
t5 = np.array([[1,2,3,4],[5,6,7,8]])
t6 = np.array([[5,6,7,8],[1,2,3,4]])
print(t5)
print(t6)
print(t5 * t6)
# example (2,2,3)可以和(1,1,1),(2,1,1),(2,2,1),(2,1,3)匹配
# 因为维度1可以和任何维度匹配
# example (2,2,3) (1,1,1)
t7 = np.array([[[1,2,3],[4,5,6]],[[7,8,9],[6,7,8]]])
print(t7.shape)
t8 = np.array([[[1]]])
print(t8.shape)
print(t7 + t8)
print(t7 * t8)
1145

被折叠的 条评论
为什么被折叠?



