将inf值的单元格替换为1

时间:2012-04-12 11:32:58

标签: matlab

鉴于以下内容

第1至17栏

    0.3108    0.7273       Inf    0.2878   -0.0947    0.1286   -0.3108    0.5634    0.2822    0.2362   -0.2628    0.0960   -0.1675   -0.0934   -0.1710   -0.3077   -0.2726

Columns 18 through 20

   -0.0630   -0.5097    0.1823

如何将inf值替换为1。 我知道如何使用循环,但有没有办法没有?

如果想用另一个名字保存它怎么办?数据保持不变data1 =数据除了inf被1替换?

1 个答案:

答案 0 :(得分:6)

使用isinf检测Inf,并将输出用作数组logical index

data(isinf(data)) = 1;