如何在matlab中过滤掉关于矩阵的数据集中的坏值?

如何在matlab中过滤掉关于矩阵的数据集中的坏值?,matlab,filter,Matlab,Filter,我想问这里的任何热心用户如何“过滤”matlab中大量数据矩阵的坏值 e、 g:我有一个MATLAB数据文件,包含代表x和y坐标的2*5000(双精度)值。如何删除高于或低于某个限制的所有值 或更简单: (数据文件中的矩阵) 12342 35542 或 1 2 4 9 2 3552342 设置某个限制并删除列: 1 2 4 2 3552 找到“坏”元素,例如A20 找到“好”列,例如~max(A20) 保留“好”列/删除“坏”列,例如A(:,~max(A20)) 我使用您的方法尝试了这种方法:M

我想问这里的任何热心用户如何“过滤”matlab中大量数据矩阵的坏值

e、 g:我有一个MATLAB数据文件,包含代表x和y坐标的2*5000(双精度)值。如何删除高于或低于某个限制的所有值

或更简单:

(数据文件中的矩阵)

12342
35542

1 2 4 9 2
3552342

设置某个限制并删除列:

1 2 4 2
3552

  • 找到“坏”元素,例如
    A<0 | A>20
  • 找到“好”列,例如
    ~max(A<0 | A>20)
  • 保留“好”列/删除“坏”列,例如
    A(:,~max(A<0|A>20))

  • 我使用您的方法尝试了这种方法:M=[1 2 4 134 2:3 5 4 2];M<0 | M>20~最大值(M<0 | M>20);M|u FILTER=M(:,~max(M<0|M>20));然而,我得到的是一个空值。请你再解释一下这个代码好吗?我还在学习matlab。@GretaStein你的输入
    M=[1 2 4 134 2:3 5 4 2]是错误的。这是一个1x10的向量,不是2x5的矩阵。此算法不适用于向量。究竟什么是不清楚的?这是基本的Matlab运算符和函数。@GretaStein,,,好的。更改了输入,现在可以工作了