当前位置: 首页 > news >正文

NumPy必知必会50例 | 5. 高级数组操作:成为 NumPy 数组的忍者

文章目录

      • 5. 高级数组操作:成为 NumPy 数组的忍者
        • 数组重塑:变形大师
          • 例子:从一维到二维
        • 数组合并:忍者团队联合
          • 例子:水平和垂直合并
        • 数组分割:忍者的快速撤退
          • 例子:水平和垂直分割

5. 高级数组操作:成为 NumPy 数组的忍者

数组重塑:变形大师

在 NumPy 的世界里,变形不需要魔法。用 reshape 就能让数组变身。

例子:从一维到二维
ninjas = np.array([1, 2, 3, 4, 5, 6])
ninjas_2d = ninjas.reshape(2, 3)
print("一维忍者阵列:\n", ninjas)
print("二维忍者阵列:\n", ninjas_2d)

输出:

一维忍者阵列:[1 2 3 4 5 6]
二维忍者阵列:[[1 2 3][4 5 6]]
数组合并:忍者团队联合

忍者们更喜欢团队作战。合并他们就像做蛋糕一样简单。

例子:水平和垂直合并
team1 = np.array([[1, 2], [3, 4]])
team2 = np.array([[5, 6], [7, 8]])# 水平合并
combined_horizontal = np.hstack((team1, team2))
print("水平合并的忍者团队:\n", combined_horizontal)# 垂直合并
combined_vertical = np.vstack((team1, team2))
print("垂直合并的忍者团队:\n", combined_vertical)

输出:

水平合并的忍者团队:
[[1 2 5 6][3 4 7 8]]
垂直合并的忍者团队:
[[1 2][3 4][5 6][7 8]]
数组分割:忍者的快速撤退

有时忍者需要快速分散,NumPy 也可以轻松搞定。

例子:水平和垂直分割
# 水平分割
left, right = np.hsplit(combined_horizontal, 2)
print("左侧忍者团队:\n", left)
print("右侧忍者团队:\n", right)# 垂直分割
top, bottom = np.vsplit(combined_vertical, 2)
print("上方忍者团队:\n", top)
print("下方忍者团队:\n", bottom)

输出:

左侧忍者团队:
[[1 2][3 4]]
右侧忍者团队:
[[5 6][7 8]]
上方忍者团队:
[[1 2][3 4]]
下方忍者团队:
[[5 6][7 8]]

如果你有更多问题或需要继续学习其他主题,请文章下方留言给我。

陌生人,无论你现在身在何处,无论你的梦想有多遥远,请记住,千里之行始于足下,坚定的走好前行的每一步,在无人问津的地方默默的汲取能量。正所谓“十年寒窗无人问,一举成名天下知。”,你能忍受多长时间默默无闻的积累,就配得上多少的花团锦簇。追逐你的梦想,世界终将因你的坚持而更加美好。相信自己,你阅读完每一篇文章,都是前行的脚印,都值得赞赏和庆祝。

http://www.lryc.cn/news/287122.html

相关文章:

  • 《WebKit 技术内幕》学习之五(3): HTML解释器和DOM 模型
  • extends 和 implements
  • 响应拦截器的 return Promise.reject(res.data.message)
  • Windows下 VS2022 编译OpenSSL 库
  • 【GitHub项目推荐--一个简单的绘图应用程序(Rust + GTK4)】【转载】
  • 【算法小记】——机器学习中的概率论和线性代数,附线性回归matlab例程
  • MySQL数据库的锁机制
  • 解决 conda新建虚拟环境只有一个conda-meta文件&conda新建虚拟环境不干净
  • React16源码: React中的completeWork对HostText处理含更新的源码实现
  • 网络协议与攻击模拟_07UDP协议
  • 生命在于折腾——WeChat机器人的研究和探索
  • 融资项目——EasyExcel将Excel文件保存至数据库
  • 【Oracle】设置FGA(Fine-Grained Audit)细粒度审计
  • js vue调用activex ocx
  • Hbas简介:数据模型和概念、物理视图
  • uniapp css样式穿透
  • 【立创EDA-PCB设计基础完结】7.DRC设计规则检查+优化与丝印调整+打样与PCB生产进度跟踪
  • android 线程池的管理工具类
  • 编码风格之(5)GNU软件编码风格(3)
  • 8 种网络协议
  • Flash读取数据库中的数据
  • 如何写出规范优雅的代码
  • 【数据结构】链表(单链表与双链表实现+原理+源码)
  • 14027.ptp 控制流
  • 【昕宝爸爸小模块】深入浅出之为什么POI的SXSSFWorkbook占用内存更小
  • CentOS安装Flume
  • Qt 多次绘图
  • 设计模式介绍
  • linux 之 ln 命令
  • 【设计模式】张一鸣笔记:责任链接模式怎么用?