numpy实现数组的组合,切割,运算与拷贝

目录

一、数组的组合

1.np.concatenate():

2.np.vstack() 和 np.hstack():

二、数组元素的切割

1.np.split():

2.np.array_split():

三、数组的算术运算

四、数组的深拷贝和浅拷贝

1.浅拷贝:

2.深拷贝:


一、数组的组合

NumPy 提供了几种方式来组合数组

1.np.concatenate()

  按照指定轴将数组沿着现有数组组合。

import numpy as np

arr1 = np.array([[1, 2, 3],
                 [4, 5, 6]])
arr2 = np.array([[7, 8, 9],
                 [10, 11, 12]])
result1 = np.concatenate((arr1, arr2), axis=0)  # 沿着行组合
print(result1)
result2 = np.concatenate((arr1, arr2), axis=1)  # 沿着列组合
print(result2)

结果:

2.np.vstack() 和 np.hstack()

  垂直和水平堆叠数组。

result_vstack = np.vstack((arr1, arr2))  # 垂直堆叠
result_hstack = np.hstack((arr1, arr2))  # 水平堆叠
print(result_vstack)
print(result_hstack)

结果:

二、数组元素的切割

1.np.split():

import numpy as np

arr1 = np.arange(16).reshape(4,4)
print(arr1)

#水平切割
a = np.hsplit(arr1,2)
b = np.split(arr1,2,axis=1)

#垂直切割
c = np.vsplit(arr1,2)
d = np.split(arr1,2,axis=0)

结果:

2.np.array_split()

  强制切割。

#水平切割
e = np.array_split(arr1,3,axis=1)
#垂直切割
f = np.array_split(arr1,3,axis=0)
print(e)
print(f)

结果:

三、数组的算术运算

  NumPy 中的数组可以进行基本的算术运算,例如加法、减法、乘法和除法等。这些运算会应用于数组的每个元素。

import numpy as np

arr1 = np.array([[1, 2],
                 [3, 4]])
arr2 = np.array([[5, 6],
                 [7, 8]])
#数组的加法:对应位置的元素求和
print(arr1 + arr2)
#数组的减法:对应位置元素相减
print(arr1 - arr2)
#数组的乘法:对应位置相乘
print(arr1 * arr2)
#数组的除法:对应位置相除
print(arr1 / arr2)
#数组的取余
print(arr2 % arr1)
#数组的取整
print(arr1 // arr2)

结果:

四、数组的深拷贝和浅拷贝

  在 NumPy 中,使用 copy() 方法可以创建数组的深拷贝。

1.浅拷贝

  新数组与原数组共享内存空间,修改一个会影响另一个。

import numpy as np

arr1 = np.array([1,2,3,4])

#浅拷贝
arr2 = arr1

#更改arr2的元素的值
arr2[0] = 100
print(arr2)
print("***********")
print(arr1)

结果:

2.深拷贝

  新数组与原数组完全独立,修改一个不会影响另一个。

#深拷贝
arr3 = arr1.copy()
arr3[0] = 10
print(arr3)
print("***********")
print(arr1)

结果:

  • 21
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,我可以为您总结一下Numpy数组与矩阵运算实验的内容。 Numpy是Python中用于科学计算的一个重要的库,它提供了高性能的多维数组对象以及各种计算和操作这些数组的函数。Numpy数组与矩阵运算实验主要包括以下内容: 1. Numpy数组的创建与索引:可以使用Numpy提供的array()函数创建一维或多维数组,并且可以使用索引和切片来访问数组中的元素。 2. Numpy数组的基本运算Numpy提供了基本的数组运算,包括加、减、乘、除等,可以对数组进行逐元素的运算。 3. Numpy数组的聚合运算Numpy提供了一些常用的聚合函数,比如sum()、min()、max()、mean()等,可以对数组中的元素进行聚合运算。 4. Numpy数组的逻辑运算Numpy提供了逻辑运算符,可用于数组中元素的逻辑判断,如and、or等。 5. 矩阵的创建与运算Numpy提供了矩阵对象,可使用matrix()函数创建矩阵,矩阵之间的运算包括加、减、乘、转置等。 6. 广播:Numpy提供了广播功能,可以使得不同形状的数组运算时具有相同的形状。 通过实验练习,可以掌握Numpy数组与矩阵运算的基本操作,如数组创建、索引、运算、聚合、逻辑运算以及矩阵创建、运算、转置等。同时,实验也会涉及到一些高级的Numpy应用,比如随机数生成、线性代数运算数组的拼接、切分和重塑等,这些内容需要结合实际应用场景进行练习。 总的来说,Numpy数组与矩阵运算实验是Python科学计算中非常重要的部分,需要反复练习和实践,才能掌握这些知识点并灵活运用。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值