![]() |
如何在MATLAB中有效查找相关性并丢弃3σ范围以外的点?
我有一个数据文件m.txt ,看起来像这样(还有很多要点):
286.842995 3.444398 3.707202 338.227797 3.597597 283.740414 3.514729 3.512116 3.744235 3.365461 3.384880 其中一些值(例如338.227797 )与我通常期望的值(较小的数字)有[B][I]很大不同[/I][/B] 。 [LIST][*]因此,我认为我将删除3-sigma range之外的所有点。如何在MATLAB中做到这一点? [*]同样,更大的问题是此文件具有t.txt关联的单独文件t.txt ,该文件存储这些数字的相应时间值。因此,我还必须从t.txt文件中删除相应的时间值。 [/LIST]我仍在学习MATLAB,我知道会有一些很好的方法(比存储从m.txt删除的元素的m.txt ,然后再从t.txt文件中删除这些元素的t.txt ) 回答: @Amro很近,但是FIND是不必要的(查找逻辑下标),您需要包括真实+/- 3 sigma范围的平均值。我会选择以下内容: %# load files m = load('m.txt'); t = load('t.txt'); %# find values within range z = 3; meanM = mean(m); sigmaM = std(m); I = abs(m - meanM) |
所有时间均为北京时间。现在的时间是 10:25。 |
Powered by vBulletin
版权所有 ©2000 - 2025,Jelsoft Enterprises Ltd.