news 2026/8/6 14:25:56

09_numpy常用函数

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
09_numpy常用函数
  • np.abs() 元素的绝对值,参数是 number 或 array

  • np.ceil() 向上取整,参数是 number 或 array

  • np.floor() 向下取整,参数是 number 或 array

  • np.isnan() 检测数组元素是否为 NaN(Not a Number,非数值) 的函数

  • ~np.isnan() 取反:找出哪些不是 NaN

  • np.multiply()逐元素相乘,对应位置相乘。
    如果第二个参数传递的是number,原数组中所有元素乘以这个数字,返回新的数组;
    如果第二个参数也是一个数组,是将两个数组中对应位置的元素相乘,返回一个新的数组,其形状与输入数组相同。

  • np.divide() 元素相除,参数是 number 或 array

  • np.where(condition, x, y) 三元运算符,x if condition else y

  • NumPy 舍入三兄弟:rint / around / round
    “四舍六入五成双,”
    “点五看偶定去向。”
    “偶舍奇入无偏差,”
    也叫银行家舍入(Banker’s Rounding)

importnumpyasnp# 2.7 numpy常用函数defbaseFunction01():array1=np.array([[1,-2.8,3.5],[4,-5.1,6.7]])print(array1,array1.dtype)print()# np.abs() 元素的绝对值,参数是 number 或 arrayprint(np.abs(array1))# np.ceil() 向上取整,参数是 number 或 arrayprint("向上取整:\n",np.ceil(array1))# np.floor() 向下取整,参数是 number 或 arrayprint("向下取整\n",np.floor(array1))# np.isnan() 检测数组元素是否为 NaN(Not a Number,非数值) 的函数array3=np.array([1.0,2.0,np.nan,4.0,np.nan,6.0])# 检测哪些是 NaN,空的都是Trueprint(np.isnan(array3))# 输出: [False False True False True False]# 取反:找出哪些不是 NaNprint(~np.isnan(array3))# 输出: [ True True False True False True]defbaseFunction02():array4=np.array([[1,2,3],[4,5,6]])# np.multiply()逐元素相乘,对应位置相乘。# 如果第二个参数传递的是number,原数组中所有元素乘以这个数字,返回新的数组;# 如果第二个参数也是一个数组,是将两个数组中对应位置的元素相乘,返回一个新的数组,其形状与输入数组相同。''' multiply乘法过程:逐元素相乘,对应位置相乘。 [[1, 2, 3], [[1, 2, 3], [[1×1, 2×2, 3×3], [[ 1, 4, 9], [4, 5, 6]] × [4, 5, 6]] = [4×4, 5×5, 6×6]] = [16, 25, 36]] '''print("元素相乘:\n",np.multiply(array4,array4))print("元素相乘写法V2:\n",array4*array4)# np.divide() 元素相除,参数是 number 或 arrayprint("divide元素相除:\n",np.divide(array4,2))# np.where(condition, x, y) 三元运算符,x if condition else yprint("三元运算符:\n",np.where(array4>3,1,0))print("*"*60)defbaseFunction03():# NumPy 舍入三兄弟:rint / around / round# np.rint()/np.around()/np.round() 四舍六入五成双(银行家舍入,只有x.5才会不一样,其他小数都一样)# NumPy 用的是 "四舍六入五成双",也叫银行家舍入(Banker's Rounding)# 为什么要这样设计?传统的"四舍五入"在大量数据中会引入系统性偏差:''' 传统四舍五入: 1.5→2, 2.5→3, 3.5→4, 4.5→5 ... .5 全部进位 → 整体偏高 ↑ 银行家舍入: 1.5→2, 2.5→2, 3.5→4, 4.5→4 ... .5 一半进位一半舍去 → 无偏差 ✓ '''# 代码案例:四舍六入五成双:# # ≤4 舍去# # ≥6 进位# # =5 → 正好为0.5时,看前一位是奇数还是偶数,偶舍奇入array2=np.array([2.3,2.5,3.5,1.4,11.6,7.5])print("四舍六入五成双\n",np.rint(array2))print("*"*60)print("四舍六入五成双,""点五看偶定去向。""偶舍奇入无偏差,""rint/around/round一个样")# 对 0.5, 1.5, 2.5, 3.5 进行四舍六入五成双# 规则:正好为0.5时,看整数部分,偶舍奇入print(np.round([0.5,1.5,2.5,3.5]))# 输出: [0. 2. 2. 4.]# 0.5 -> 0 (0是偶数,舍)# 1.5 -> 2 (1是奇数,入)# 2.5 -> 2 (2是偶数,舍)# 3.5 -> 4 (3是奇数,入)if__name__=="__main__":# baseFunction01()# baseFunction02()# 四舍六入五成双baseFunction03()
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/8/6 14:24:39

BepInEx插件框架:5分钟完成游戏模组部署与配置

BepInEx插件框架:5分钟完成游戏模组部署与配置 【免费下载链接】BepInEx Unity / XNA game patcher and plugin framework 项目地址: https://gitcode.com/GitHub_Trending/be/BepInEx 想要为Unity游戏添加新功能或修改游戏机制?BepInEx插件框架是…

作者头像 李华
网站建设 2026/8/6 14:23:37

5分钟终极指南:免费解锁Wand游戏修改器完整功能

5分钟终极指南:免费解锁Wand游戏修改器完整功能 【免费下载链接】Wand-Enhancer Advanced UX and interoperability extension for Wand (WeMod) app 项目地址: https://gitcode.com/GitHub_Trending/we/Wand-Enhancer 还在为Wand游戏修改器的高级功能需要付…

作者头像 李华
网站建设 2026/8/6 14:23:23

Photoshop图层批量导出终极指南:3分钟学会高效导出技巧

Photoshop图层批量导出终极指南:3分钟学会高效导出技巧 【免费下载链接】Photoshop-Export-Layers-to-Files-Fast This script allows you to export your layers as individual files at a speed much faster than the built-in script from Adobe. 项目地址: ht…

作者头像 李华
网站建设 2026/8/6 14:22:19

ppInk终极指南:7个简单技巧让屏幕标注变得如此高效

ppInk终极指南:7个简单技巧让屏幕标注变得如此高效 【免费下载链接】ppInk Fork from Gink 项目地址: https://gitcode.com/gh_mirrors/pp/ppInk ppInk是一款功能强大的Windows屏幕标注软件,源自gInk项目,专为教学演示、远程会议和日常…

作者头像 李华
网站建设 2026/8/6 14:21:07

5分钟掌握gInk:Windows上最简洁的屏幕标注工具完整教程

5分钟掌握gInk:Windows上最简洁的屏幕标注工具完整教程 【免费下载链接】gInk An easy to use on-screen annotation software inspired by Epic Pen. 项目地址: https://gitcode.com/gh_mirrors/gi/gInk gInk是一款免费开源的Windows屏幕标注软件&#xff0…

作者头像 李华
网站建设 2026/8/6 14:15:52

SAP与MOM系统集成:RFC与RESTful API技术选型

1. SAP-MOM接口对接的核心场景与技术选型在制造业数字化转型过程中,SAP与MOM(制造运营管理)系统的对接是典型的企业级集成场景。根据我参与的多个项目经验,这种对接通常涉及三大核心业务流:生产订单同步(PP…

作者头像 李华