numpy中的一些函数操作

1常见函数操作:

np.exp(b)

np.sqrt(b)

np.ones((2,3))

2:把多维的矩阵压缩成一维的向量:方法有三种:

    1):b.ravel()

2):b.flatten()

3:还有reshape函数reshape(1,x)

3:矩阵的行拼接和列拼接:

np.vstack((b,c)) 行拼接

np.hstack((b,c))列拼接

4:切分数据:也有两种,按行按列切分

1:np.hsplit(a,3)   ;    np.hsplit(a,(2,3)) 前一个是平均分成三份,后者是在第二列和第三列那里切

2:np.vsplit也是同理的;

5:返回最大值的下标:

np.argmax(b,axis =0) 按列返回最大值的下标

axis=1则是按行返回最大值的下标;

6:np.tile(a,(2,3)) 是在原来的基础上,行变成原来的两倍,列变成原来的三倍;

7:最后说一数组的赋值和拷贝问题:

如下:

a = np.array(12)

b = a 

print(b is a )

b.shape(3,4)

print(a.shape)

结果是True和(3,4) 也就是说,这种方式的赋值,a,和b只想了同意内存地址,

操作任何一个另一个都会变化;


第二种是:通过b = a.view() 来赋值,这种凡是不会出现这种情况;

第三种是b = a.copy() 这种也是,两者开始的值相同,后续操作不会影响对方;


END

NumPyPython用于处理大型数组和矩阵的核心库,提供了高效的数学函数操作。以下是一些主要的NumPy函数用法: 1. **创建数组**: - `numpy.array()`: 将列表、元组或其他序列转换为NumPy数组。 - `numpy.zeros()`: 创建指定形状的全零数组。 - `numpy.ones()`: 创建指定形状的全一数组。 - `numpy.empty()`: 创建给定形状但未初始化的内存块。 2. **基本操作**: - `numpy.add(a, b)`, `a + b`: 数组相加。 - `numpy.subtract(a, b)`, `a - b`: 数组相减。 - `numpy.multiply(a, b)`, `a * b`: 数组相乘。 - `numpy.divide(a, b)`, `a / b`: 数组除法(元素级)。 3. **索引和切片**: - `array[index]` 或 `array[start:stop:step]`: 获取子数组或特定元素。 - `numpy.reshape(array, new_shape)`: 改变数组的维度。 4. **统计和计算**: - `numpy.mean(a, axis=0)`: 计算数组平均值。 - `numpy.sum(a, axis=None)`: 汇总数组元素。 - `numpy.std(a, ddof=1)`: 计算标准差。 - `numpy.argmax(a)`: 找到数组最大值的索引位置。 5. **线性代数**: - `numpy.dot(a, b)`: 矩阵点积。 - `numpy.linalg.inv(a)`: 计算矩阵的逆。 - `numpy.linalg.det(a)`: 计算矩阵行列式的值。 6. **随机数生成**: - `numpy.random.rand(shape)`: 生成均匀分布的随机数。 - `numpy.random.randn(shape)`: 生成正态分布的随机数。 7. **布尔逻辑**: - `numpy.where(condition)`: 根据条件返回数组的子集。 这只是NumPy功能的一部分,实际使用时还有很多其他高级函数函数组合,如广播规则、数组切片和重塑等。如果你有具体的函数名或操作想了解,告诉我具体的问题,我可以提供更详细的说明。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值