【问题标题】:Matlab- how to creat two vectors from one vector using loopMatlab-如何使用循环从一个向量创建两个向量
【发布时间】:2015-05-10 22:11:14
【问题描述】:

在这段代码中,我创建了一个包含 100 个值的随机向量,我想从中获取两个向量:一个包含所有低于 1 的值,一个包含所有高于 1 的值。我创建了这段代码,它有效,但是我想知道是否有更有效的方法,而无需将 2 个向量填充为 0

clear all, close all, clc;
%% ficiional vector creation
%
a=0;
b=10;
v1=(b-a).*rand(100,1);
i=1;
while i<length(v1)  

if v1(i)>1
    x(i)=v1(i);
end
if v1(i)<1
        y(i)=v1(i);
end

        i=i+1;
end
x(x==0)=[];
y(y==0)=[];

谢谢!

【问题讨论】:

    标签: matlab loops vector


    【解决方案1】:
    a=0;
    b=10;
    v1=(b-a).*rand(100,1);
    x=v1(v1>1);
    y=v1(v1<1);
    

    【讨论】:

    • 非常感谢....出于某种原因,我没有看到这个解决方案,我太专注于在循环中创建向量-.-
    猜你喜欢
    • 1970-01-01
    • 2020-04-28
    • 2020-08-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多