Matlab 如何计算数据系列中每个点与第一个点的差值?

Matlab 如何计算数据系列中每个点与第一个点的差值?,matlab,difference,array-difference,Matlab,Difference,Array Difference,我有下面给出的x-y坐标的签名时间序列数据(一个文件) 我想计算相对于序列第一点的(差)x-y坐标。。。 谁能指导我如何在matlab中计算它?有合适的函数或代码吗? 提前感谢。要从整个数组中减去第一行,请使用bsxfun: A = [ 12200 9400 12200 9400 12200 9400 12200 9400 12200 9400 12200 9400 12300 9400 12300 9400 12300 9400 12300 9300 12300 9300]

我有下面给出的x-y坐标的签名时间序列数据(一个文件)

我想计算相对于序列第一点的(差)x-y坐标。。。 谁能指导我如何在matlab中计算它?有合适的函数或代码吗?
提前感谢。

要从整个数组中减去第一行,请使用
bsxfun

A = [
12200 9400 
12200 9400 
12200 9400 
12200 9400 
12200 9400 
12200 9400 
12300 9400 
12300 9400 
12300 9400
12300 9300 
12300 9300]

differenceToFirstPoint = bsxfun(@minus, A, A(1,:));

%# to calculate the norm:
normOfDifference = sqrt( sum( differenceToFirstPoint.^2, 2));

我假设你的问题是,从一组点开始
(x1,y1);(x2,y2);。。。(xn,yn)
如何获取
(0,0);(x2-x1,y2-y1);。。。(xn-x1,yn-y1)

快速解决方案:如果
a
是一个包含数据的N×2数组,那么

b=a; b(:,1)=b(:,1)-b(1,1); b(:,2)=b(:,2)-b(1,2);

如果您的问题是关于如何从CSV文件或其他文件导入数据,则完全不同。

如果删除一些重复项,则更容易获得帮助(您可以轻松地使数据集大小减半,并且仍然提出相同的问题。此外,如果包含所需的结果,也会有很大帮助)(如果您的行数较少,这也会更简单。谢谢,先生……我明白了。我在第一条评论中回答了问题吗?如果是,我会将其作为答案发布,这样问题就不会出现未回答的情况。是哪一条解决了问题?还是第二条评论,您会更新问题?
b=a; b(:,1)=b(:,1)-b(1,1); b(:,2)=b(:,2)-b(1,2);