Apache Axis

杨福宇专栏|寻找可超车的弯道:伟人讲破字当头,立也在其中了

谁说我不能喝 提交于 2021-01-09 10:21:16
杨福宇老师多年研究CAN总线在汽车中的应用,文章非常有实用价值,为了方便汽车行业的工程师关注杨老师的研究成果,本公众号特别开设了《杨福宇专栏》,敬请期待更多精彩内容。 Fault-degradation 表示系统出错时性能降级运行,尽量保存可用的功能,维持功能安全。这一概念在CAN开发时就有了,只是后来被更为重视。CAN为了满足性能下降时不是突然的,所以设计了运行的3种状态:主动报错(Erroractive);消极报错(Error passive)和离线(Busoff)。主动报错状态时,主动报错标志(active error flag)是6个D(显位),通过破坏填充位规则,使全体节点都知道,大家同时丢弃这个帧,保证了系统内数据的一致性。消极报错状态时,节点发现的错所发的消极报错标志(passive error flag)是6个R(隐位),报错帧不能通知到其他节点,也就不影响其他节点的正常收发。在离线状态时,节点停止了收发,代表出错太多的节点不会再干扰系统。这3种状态是根据出错计数器的值判断的,节点发现错时根据一定的规则确定出错计数器的增量,正常接收时每次将出错计数器减1,此外还有值的上下限。 但是由于设计上的缺陷,产生了第4种状态,即本文所述的等效离线状态:在一定条件下,节点会处于连续的出错状态,既不能发送,也不能接收其它节点所发的数据帧

LightningChart具有鼠标点跟踪和注释的3D图表

◇◆丶佛笑我妖孽 提交于 2021-01-09 09:23:41
LightningChart.NET 完全由GPU加速,并且性能经过优化,可用于实时显示海量数据-超过10亿个数据点。 LightningChart包括广泛的2D,高级3D,Polar,Smith,3D饼/甜甜圈,地理地图和GIS图表以及适用于科学,工程,医学,航空,贸易,能源和其他领域的体绘制功能。 1.将View3D定义为活动视图并定义Z轴范围。 // Set View3D as active view and set Z-axis range. chart.ActiveView = ActiveView.View3D; chart.View3D.ZAxisPrimary3D.SetRange(0, 80); 2 .创建一个新的PointLineSeries3D对象以显示数据。 // Create a new PointLineSeries3D for displaying data and set axis bindings to primary axes. var series = new PointLineSeries3D(chart.View3D, Axis3DBinding.Primary, Axis3DBinding.Primary, Axis3DBinding.Primary) { // Set this to true to set a color for

图解NumPy:常用函数的内在机制

跟風遠走 提交于 2021-01-08 01:46:58
选自Medium 作者:Lev Maximov 机器之心编译 编辑:Panda 支持大量多维数组和矩阵运算的 NumPy 软件库是许多机器学习开发者和研究者的必备工具,本文将通过直观易懂的图示解析常用的 NumPy 功能和函数,帮助你理解 NumPy 操作数组的内在机制。 NumPy 是一个基础软件库,很多常用的 Python 数据处理软件库都使用了它或受到了它的启发,包括 pandas、PyTorch、TensorFlow、Keras 等。理解 NumPy 的工作机制能够帮助你提升在这些软件库方面的技能。而且在 GPU 上使用 NumPy 时,无需修改或仅需少量修改代码。 NumPy 的核心概念是 n 维数组。n 维数组的美丽之处是大多数运算看起来都一样,不管数组有多少维。但一维和二维有点特殊。本文分为三部分: 1. 向量:一维数组 2. 矩阵:二维数组 3. 三维及更高维 本文参考了 Jay Alammar 的文章《A Visual Intro to NumPy》并将其作为起点,然后进行了扩充,并做了一些细微修改。 NumPy 数组和 Python 列表 乍一看,NumPy 数组与 Python 列表类似。它们都可作为容器,能够快速获取和设置元素,但插入和移除元素会稍慢一些。 NumPy 数组完胜列表的最简单例子是算术运算: 除此之外,NumPy 数组的优势和特点还包括:

numpy

懵懂的女人 提交于 2021-01-07 00:55:18
  numpy是机器学习里面基础数字算法库,补充了python语言缺乏的数字计算能力,Numpy底层由C语言实现,运行效率充分优化。2006年,Numpy脱离Scipy成为独立的项目。 ndarry数组 numpy.array()   传入数组参数,可以是一维的也可以是二维三维的,数组会将其转变成ndarray结构。 import numpy as np a = np.array([1, 2, 3, 4 ]) # [1 2 3 4] b = np.array([[1, 2, 3], [1, 2, 3]]) # 创建维度为2的数组 # [[1 2 3] # [1 2 3]] print (type(a)) # <class 'numpy.ndarray'> ndarray.ndim   数组的维数 print (a.ndim) # 1 print (b.ndim) # 2 ndarray.size   数组的元素数量 print (b.size) # 6 len(ndarray)   查看数组的第一维度数 print (len(b))   # 2 ndarray.dtype     查看数组元素的类型 print (type(b)) # <class 'numpy.ndarray'> print (b.dtype) # int32 b = a.astype( " float32 "

numpy

点点圈 提交于 2021-01-06 22:50:50
To be continue NumPy(Numerical Python) 是 Python 语言的一个扩展程序库,支持大量的维度数组与矩阵运算,此外也针对数组运算提供大量的数学函数库。 引入文件 import numpy as np ndarray 一种多维数组对象 创建array 从python列表创建 array所有的数据类型都是相同的。如果传入了拥有不同类型元素的列表,array会尝试自动转换 datal = np.array([1,3,4,2]) 也可以传入多维列表 datal2 = np.array([[1,2,3,4],[3,4,5,6]]) 通过函数创建数组 该方法比python列表创建速度快 函数 作用 np.zeros(10,dtype=int) 创建值为0数据类型为int np.ones((3,5),dtype=float) 创建值为1数据类型为float np.empty((2,3,2)) 创建空数组时,只是取出对应的内存大小,里面可能因内存残留而有其他数据 np.full((3,4),3.14) 创建一个3 4且初始化为3.14的数组 np.arange(0,20,2) 从0到20,步长为2 np.linspace(0,1,5) 从0到1均匀生成5个数(即,0,0.25,0.5,0.75,1) np.eye(num) 创建单位矩阵 np.random

机器学习(二)之决策树(ID3)

谁说我不能喝 提交于 2020-12-27 03:47:13
Contents 理论基础 熵 信息增益 算法实现 Python 模型的保存与读取 总结 理论基础 决策树(Decision Tree, DT): 决策树是一种基本的分类与回归方法。由于模型呈树形结构,可以看做是if-then规则的集合,具有一定的可读性,可视化效果好。 决策树的建立包括3个步骤: 特征选择、决策树生成和决策树的修剪。   模型的建立实际上就是 通过某种方式,递归地选择最优的特征,并通过数据的划分,将无序的数据变得有序。( 对于分类而言,希望的是 将一些多类别的数据划分到各自的类别中 ,实现 从数据的混杂到条理 ,这也就是无序到有序的概念 )    如下图所示,PLAN1和PLAN2描述了 通过两个不同的特征,数据从无序变到有序的情况 。从划分结果可以看出,特征1相对于特征2要更优一些,划分结果数据的有序程度更高。   因此,在构造决策树时,第一个需要解决的问题就是 如何确定出哪个特征划分数据是起决定性作用的 ,或者说 先使用哪个特征进行划分能够使数据的不确定性减少的更多 ,从而使数据变得更有序,分类效果更好,也就是接下来要介绍的 熵 和 信息增益 的概念(Id3)。当找到最优的特征后,数据集依据此特征划分为几个数据子集,这些数据会分布在该决策点的所有分支中。此时, 如果某个分支下的数据属于同一类型,则该分支下的数据分类已经完成 ,无需进行下一步的数据集分类;如果

pandas系列(三)Pandas分组

混江龙づ霸主 提交于 2020-12-23 04:39:34
点击上方「蓝字」关注我们 文章目录 第3章 分组 一、SAC过程 1. 内涵 2. apply过程 二、groupby函数 1. 分组函数的基本内容: 2. groupby对象的特点 三、聚合、过滤和变换 1. 聚合(Aggregation) 2. 过滤(Filteration) 3. 变换(Transformation) 四、apply函数 1. apply函数的灵活性 2. 用apply同时统计多个指标 第3章 分组 import numpy as np import pandas as pd df = pd . read_csv ( 'data/table.csv' , index_col = 'ID' ) df 一、SAC过程 1. 内涵 1.SAC指的是分组操作中的split-apply-combine过程 2.其中split指基于某一些规则,将数据拆成若干组,apply是指对每一组独立地使用函 数,combine指将每一组的结果组合成某一类数据结构 2. apply过程 在该过程中,我们实际往往会遇到四类问题: 1.整合(Aggregation)——即分组计算统计量(如求均值、求每组元素个数) 2.变换(Transformation)——即分组对每个单元的数据进行操作(如元素标准化) 3.过滤(Filtration)——即按照某些规则筛选出一些组

pandas

霸气de小男生 提交于 2020-12-22 06:37:35
  pandas是一个强大的python数据分析的工具包,是基于NumPy构建的   主要功能: 具备对其功能的数据结构DataFrame Series 集成时间序列功能 提供丰富的数学运算和操作 灵活处理缺失数据   安装:pip install pandas   引用:import pandas as pd Series-一维数据对象   Series是一种类似于一维数组的对象,由一组数据和一组与之相关的数据标签(索引)组成   创建方式 In [206]: import pandas as pd In [207]: pd.Series([4,7,-5,3]) Out[207]: 0 4 1 7 2 -5 3 3 dtype: int64 In [208]: pd.Series([4,7,-5,3], index=['a','b','c','d']) Out[208]: a 4 b 7 c -5 d 3 dtype: int64 In [209]: pd.Series({'a':1,'b':2}) Out[209]: a 1 b 2 dtype: int64 In [210]: pd.Series(0, index=['a','b','c','d']) Out[210]: a 0 b 0 c 0 d 0 dtype: int64   获取值数组和索引数组:

[Python]Matplotlib绘图基础

删除回忆录丶 提交于 2020-12-19 06:09:48
1.简介 Matplotlib 是一个 Python 的 2D绘图库,它以各种硬拷贝格式和跨平台的交互式环境生成出版质量级别的图形。 2.绘图基础 2.1 图表基本元素 图例和标题 x轴和y轴、刻度、刻度标签 绘图区域及边框 网格线 2.2 图表基本属性 多重绘图属性: 是否在同一个图上绘制多个系列的线 多重子图属性: 是否生成多个子图,并在每个子图上绘制多个系列的线 3.绘图方式 3.1 Pyplot API [1] 3.1.1 属性设置函数 绘制图边框: box 为图表添加图例: figlegend 为轴系列添加图例:legend 为图添加标题:title 在图上添加文字: figtext 在轴系列上添加文字:text 设置网格: grid 设置多重绘图:hold 使用紧密布局:tight_layout 改变刻度和刻度标签的样式:tick_params / ticklabel_format 设置最小刻度:minorticks_off / minorticks_on 在多个子图上方绘制超级标题:suptitle 为图表添加数据表:table 共享x轴或y轴:twinx / twiny 设置x/y标签:xlabel / ylabel 设置x/y极限:xlim / ylim 设置x/y刻度:xticks / yticks 3.1.2 属性获取函数 获取系列轴:gca 获取图表:gcf

机器学习中的音频特征:理解Mel频谱图

泄露秘密 提交于 2020-12-18 09:37:13
如果你像我一样,试着理解mel的光谱图并不是一件容易的事。你读了一篇文章,却被引出了另一篇,又一篇,又一篇,没完没了。我希望这篇简短的文章能澄清一些困惑,并从头解释mel的光谱图。 信号 信号是一定量随时间的变化。 对于音频,变化的量是气压。 我们如何以数字方式捕获此信息? 我们可以随时间采集气压样本。 我们采样数据的速率可以变化,但是最常见的是44.1kHz,即每秒44,100个采样。 我们捕获的是信号的波形,可以使用计算机软件对其进行解释,修改和分析。 import librosa import librosa.display import matplotlib.pyplot as plty, sr = librosa.load('./example_data/blues.00000.wav')plt.plot(y); plt.title('Signal'); plt.xlabel('Time (samples)'); plt.ylabel('Amplitude'); 我们可以使用音频信号的数字表示形式。 欢迎来到信号处理领域! 您可能想知道,我们如何从中提取有用的信息? 看起来像是一团混乱。 这就引出我们的朋友傅里叶,这里是它最熟悉的领域。 傅立叶变换 音频信号由几个单频声波组成。 在一段时间内对信号进行采样时,我们仅捕获得到的幅度。 傅立叶变换是一个数学公式