02_属性、降维、四则运算

本文深入解析矩阵的常见属性如shape、dtype、size等,并详细阐述矩阵的四则运算规则及升降维操作,通过实例展示如何使用NumPy进行高效矩阵运算。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

在这里插入图片描述


博文配套视频课程:24小时实现从零到AI人工智能


矩阵的常见属性

  1. shape:显示当前矩阵的形状
  2. dtype:显示矩阵元素的数据类型,int32则占4个字节,float64则占8个字节
  3. size:返回当前矩阵的元素的数量
  4. itemsize:返回元素所占空间的大小
# 生成了一个3行4列的二维矩阵
t1 = np.arange(12).reshape(3,4)
# 三个非常重要的属性:值,类型,形状
print(t1,type(t1),t1.shape)
'''
[[ 0  1  2  3]
 [ 4  5  6  7]
 [ 8  9 10 11]] <class 'numpy.ndarray'> (3, 4)
'''

print('矩阵元素的数量:', t1.size)
# 矩阵元素的数量: 12

print(f'元素类型{t1.dtype},所占的空间大小:{t1.itemsize}个字节')
# 元素类型int32,所占的空间大小:4个字节

t1 = t1.astype(np.float64)
print(f'元素类型{t1.dtype},所占的空间大小:{t1.itemsize}个字节')
# 元素类型float64,所占的空间大小:8个字节```

矩阵的四则运算

如果是矩阵与数值进行四则运算则矩阵里面的每个元素分别与数值进行运算,如果矩阵与矩阵进行运算则两个运算的矩阵尺寸必须兼容

t1 = np.arange(12).reshape(3,4)
# 让t2形状与t1完全相同
t2 = t1
print(t2)
t3 = t2 * t1
print(t3)
print('矩阵尺寸可以不同,但是必须 (?,1) , (1,?)')
t2 = np.arange(4).reshape(1,4)
print(t2)
# t2中的4个元素,与t1中的每一行4个元素分别进行运算
print(t1 + t2)
# t2中的3个元素,与t1中的每一列3个元素分别进行运算
t2 = np.arange(3).reshape(3,1)
print(t2)
print(t1 * t2)

矩阵升降维

矩阵之间可以非常方便的进行升降维,而且通过代码可以发现,升降维之后的运算与升降维之前运算的结果是相同的

t1 = np.arange(12).reshape(3,4)
t2 = t1 + 1
print(t2)
'''
[[ 1  2  3  4]
 [ 5  6  7  8]
 [ 9 10 11 12]]
'''

# 对二维矩阵进行降维操作, order='F' 则是列优先
t3 = t1.flatten(order='C')
t3 = t3 + 1
t3 = t3.reshape(3,4)
print(t3)
'''
[[ 1  2  3  4]
 [ 5  6  7  8]
 [ 9 10 11 12]]
'''

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值