trim.m

来自「matlab建模工具箱及其应用 功能强大 收藏了很久了 和大家一起分享」· M 代码 · 共 19 行

M
19
字号
function data=trim(data,outval)
%data=trim(data,outval)
% 祛除坏数据,包括NaN, Inf, 和异常大小数据
% data: 列状数据,每列来自一个总体,返回净化后的数据
% outval: 系数因子,离均值超过outval倍标准差被判为异常大小,默认为4

% L.J.HU 8-17-1999

if nargin<2,outval=4;end
outliers=(isnan(data)|abs(data)==inf);
[n,m]=size(data);mu=mean(data);sigma=std(data);
outliers=outliers+(abs(data-ones(n,1)*mu)>outval*ones(n,1)*sigma);
if m>1,
   data(any(outliers'),:)=[];
else
  data(find(outliers'),:)=[];
end

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?