首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >MATLAB中的谱导数,端点问题

MATLAB中的谱导数,端点问题
EN

Stack Overflow用户
提问于 2015-02-06 19:39:10
回答 1查看 100关注 0票数 0

我试着用以下线来获取125波段a谱的导数:

代码语言:javascript
复制
dW=diff(wavelength);
dR=diff(data);
df=dR./dW;

问题是,在下一步,我想把它与原始光谱进行数值比较,并通过绘图直观地进行比较,但df的大小是124,而我的原始波长是125。问题是,我必须删除第一个还是最后一个乐队?然而,一些光谱分析软件的输出并没有改变其大小。取平均带也不起作用,它使图表表现出疯狂的行为。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-02-06 19:46:16

diff 基本上是

代码语言:javascript
复制
Y = [X(2)-X(1) X(3)-X(2) ... X(m)-X(m-1)]

这意味着它必须比您的输入更短(您不能从任何东西中减去什么,对吗?)

当然,你必须做什么取决于你想做什么,但是最小的“改变意义”的方法(在取样时间方面保持因果关系)是用一个任意的值在你的dWdR前面。

顺便说一句,如果df=dR./dW有0(如果两个连续的数据值是相同的,那么dW可能会有很多NaNs )。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/28373466

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档