前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >python中NumPy的矢量运算

python中NumPy的矢量运算

作者头像
多凡
发布于 2019-11-01 01:20:46
发布于 2019-11-01 01:20:46
1K00
代码可运行
举报
文章被收录于专栏:sringbootsringboot
运行总次数:0
代码可运行

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。

本文链接:https://blog.csdn.net/weixin_44580977/article/details/101981194

接下来了解下矢量运算的能力, 矢量的特性可以理解为并行化的运算, 也就是说在对数组执行复杂计算时会作用到元素级别, 这样仅仅用简洁的表达式就可以代替Python的for循环。

我们先使用NumPy的random.normalvariate()生成一个平均收盘股价为10元(即期望为10),振幅为1元(即标准差为1),样本数量为1000的正态分布随机数组,如下所示:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
stock_data = np.random.normal(loc=10.0, scale=1.0, size=1000)
print("stock_data:\n {}".format(stock_data))
"""
stock_data:
[10.78547256  9.76528172  9.22565839  9.88816694  9.98375121  8.82134049
 10.35872851  9.47037456 10.10779769  8.90763374  9.87537764 10.19336141
 10.23045668  9.56778185  .......  11.52876708  9.31758815  9.92082024]
"""

我们规整化所有浮点型随机数据的精度,以便于后续显示和运算。此处使用np.around()方法将所有数据保留2位小数,由于矢量运算的能力,此处仅需一行代码就可实现,如下所示:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
stock_data = np.around(stock_data,2)#保留2位小数
print("stock_data:\n {}".format(stock_data))
"""
stock_data:
[11.97  9.34 12.14 11.28 11.7   8.65  8.81  8.63 11.93  9.48  8.93  9.83
 10.54  9.38 10.93  9.09 10.4   9.88 10.35 11.67  7.97 12.19 10.1  11.22
  9.85 10.91 10.38  9.16  9.46  ...... 10.02  9.27 11.2   9.4   9.83  8.99]
"""

还有其他方法 np.roll()为循环右移 第一个值需要设置为无效值np.nan np.roll(stock_data,1)

NumPy中的ndarray类,可以更加简洁的进行 矢量算术运算,并且在处理多维的大规模数组时快速且节省空间。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2019/10/03 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
ROS中的TF坐标变换:从传感器数据到机器人系统的精准定位
在机器人系统中,配备了多种传感器,例如激光雷达和摄像头等。这些传感器能够感知机器人周围的物体位置,包括坐标、横向、纵向以及高度的距离信息。它们的作用是协助机器人准确定位障碍物。然而,并非所有传感器都能直接提供物体相对于机器人系统或其他组件的方位信息。虽然可以获取物体相对特定传感器的方位信息,但这并不等同于物体相对于整个机器人系统或其他组件的方位信息。在信息显示方面存在限制,因为这需要经历一定的转换过程。更详细地描述如下:
芯动大师
2025/05/19
1020
ROS中的TF坐标变换:从传感器数据到机器人系统的精准定位
ROS2机器人坐标工具→tf2静态广播←Python
发布静态变换对于定义机器人底座与其传感器或非移动部件之间的关系很有用。 例如,最容易推断激光扫描仪中心框架中的激光扫描测量值。
zhangrelay
2022/06/02
9330
ROS2机器人坐标工具→tf2静态广播←Python
ROS2 高级组件中的webots介绍
这一篇文章主要是和大家分享一下关于ROS2 高级组件中的webots,会介绍关于webots的知识点,以及如何安装和测试环节,最后就是利用 webots 实现一个差速轮式机器人的运动仿真。
芯动大师
2025/05/15
410
ROS2 高级组件中的webots介绍
ROS2机器人编程简述humble-第四章-BASIC DETECTOR .3
由于缺¥,所有设备都非常老旧,都是其他实验室淘汰或者拼凑出来的设备。机器人控制笔记本是2010年版本。
zhangrelay
2023/02/26
7550
ROS2机器人编程简述humble-第四章-BASIC DETECTOR .3
ROS2机器人编程简述humble-第四章-The TF Subsystem
TF(坐标系转换)子系统是ROS2机器人框架中的一个重要组件,它的功能是提供坐标系转换服务,使得不同坐标系之间的数据可以转换。比如,机器人的传感器可以产生的数据是基于机器人本体坐标系的,而机器人的末端机械臂可以根据这些数据来控制机械臂的运动,但是机械臂需要的数据是基于机械臂坐标系的,这时候TF子系统就可以把数据从机器人本体坐标系转换成机械臂坐标系,从而实现机械臂的控制。
zhangrelay
2023/02/26
7140
ROS2机器人编程简述humble-第四章-The TF Subsystem
[ROS2基础] TF2使用细节
本示例中启动了两只小乌龟Turtle1和Turtle2。TF发布器会将Turtle1相对于world坐标系的位置关系和Turtle2相对于world坐标系的位置关系发布出来。为了实现Turtle2跟随Turtle1的效果,程序中获取了Turtle1相对于Turtle2的位置关系并且将其折算成速度控制量。
首飞
2022/06/05
2.6K0
[ROS2基础] TF2使用细节
ROS2极简总结-坐标变换-TF
*此处重点,ROS1成熟,而ROS2还是深度开发中的实验版,LTS长期支持版目前也没有5年,而是3年,此版本不适合初学者学习!
zhangrelay
2021/12/02
1.3K0
ROS2极简总结-坐标变换-TF
ROS2机器人编程简述humble-第四章-COMPUTATION GRAPH .2
绘制 "base_footprint", "detected_obstacle":
zhangrelay
2023/02/26
7050
ROS2机器人编程简述humble-第四章-COMPUTATION GRAPH .2
ROS机器人TF基础(坐标相关概念和实践)
机器人建模和控制必须掌握坐标系和坐标变换等基础知识。机器人在空间中运动主要有两种形式:
zhangrelay
2020/09/06
1.5K0
ROS2学习tf2坐标变换
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
zhangrelay
2019/09/18
2.3K0
ROS2学习tf2坐标变换
ROS专题----数据可视化rviz简明笔记
1 DisplayTypes/Marker:http://wiki.ros.org/rviz/DisplayTypes/Marker
zhangrelay
2019/01/23
5K0
开源无人机集群.1(ROS介绍)
近些年无人机编队很火热,大家也热衷于低成本的实现,大家看也在寻求着各种方案,很不幸,这个东西不是普通人可以玩转的东西。当DJI 推出了可以编程的Tello以后大家都觉得看到了希望,大量的人来涌入研究这个东西,但比较遗憾,由于无人机本身在设计上面对场景的不适配,效果不好,听见最多的声音就是定位不准。不过无所谓,它本身已经足够优秀了。
云深无际
2022/06/27
1.6K0
开源无人机集群.1(ROS介绍)
机器人编程实践-ROS2基础与应用-第⑦版
课程围绕机器人操作系统(ROS2)的应用展开,包括机器人学的基础理论和常用工具。借助立体多样的示例,课程可以为使用ROS2进行机器人开发设计的学员提供一个扎实的基础和相关应用全貌。课程将学习如何创建软件包、包括仿真、连接传感器和执行器以及集成控制算法,通过一套指导教程,掌握应用ROS2从零开始设置环境,连接各个传感器和执行器并实现机器人控制系统(导航)。
zhangrelay
2022/05/01
7540
机器人编程实践-ROS2基础与应用-第⑦版
ROS2机器人编程简述humble-第四章-AN OBSTACLE DETECTOR THAT USES TF2 .1
ROS2机器人Gazebo是一个专门为机器人应用开发的三维模拟器,它可以帮助机器人开发人员更快、更容易地设计和调试机器人应用。Gazebo提供了一个可视化的环境,可以模拟真实世界的物理环境,并且可以通过ROS2接口与其他机器人应用进行通信。使用Gazebo,可以更快、更容易地开发机器人应用,并且可以在实际环境中更好地测试和调试机器人应用。
zhangrelay
2023/02/26
4440
ROS2机器人编程简述humble-第四章-AN OBSTACLE DETECTOR THAT USES TF2 .1
ROS2机器人编程简述humble-第四章-IMPROVED DETECTOR .4
TFs odom → base footprint 和 odom → obstacle
zhangrelay
2023/02/26
4770
ROS2机器人编程简述humble-第四章-IMPROVED DETECTOR .4
ROS机器人课程复习小贴士
https://download.csdn.net/album/detail/4431
zhangrelay
2019/01/23
7230
ROS1云课→24机器人感知配置
使用tf(Transform Frame)软件库来完成这部分工作。它会管理坐标变换树。也可以使用数学工具来完成这部分工作,但如果需要计算很多的坐标系,那么这就会显得有些复杂和混乱了。
zhangrelay
2022/09/30
3070
ROS1云课→24机器人感知配置
[ROS2] 你应该知道Costmap_2d 的这些细节
Costmap_2d 的插件都是继承于CostmapLayer。具体的关系如下图所示:
首飞
2022/04/18
1.2K0
[ROS2] 你应该知道Costmap_2d 的这些细节
ROS2机器人笔记20-09-06
ROS2Foxy功能包不断完善,Gazebo新版Ignition Robotics功能也更加丰富!
zhangrelay
2022/03/21
1.2K0
ROS2机器人笔记20-09-06
ROS2 机器人操作系统入门和安装以及如何使用 .NET 进行开发
ROS(Robot Operating System,机器人操作系统,下文简称“ROS”)是一组软件库和工具的组合,可以帮助构建机器人应用程序。从驱动程序到最先进的算法,以及强大的开发工具,ROS 满足设计一个机器人项目所需要的一切东西,并且这些都是开源的。
桑榆肖物
2023/01/03
1.7K0
ROS2 机器人操作系统入门和安装以及如何使用 .NET 进行开发
推荐阅读
相关推荐
ROS中的TF坐标变换:从传感器数据到机器人系统的精准定位
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档