我是MATLAB的新手,我想创建一个随机的n * n矩阵,只包含-1 OR 1作为值。 有什么帮助吗?
答案 0 :(得分:2)
我会使用randi
% Generate random array of 0s and 1s, *2 and -1 to give random values -1 or +1
m = randi([0,1], n)*2-1
答案 1 :(得分:0)
我通常使用randi
来生成我感兴趣的数字的索引。在您的情况下,您对数字感兴趣
a= [-1,1];
因此我们使用
b = randi(length(a),2,2); %Generate matrix of size 2x2
生成一组随机索引。最后,我们只需将索引转换为感兴趣的数字。
c = a(b); %Now a 2x2 matrix of -1, 1 numbers
答案 2 :(得分:-1)
A=rand(n);
thres=rand(1); % or whatever percentage
A=A>thres; % 1 and 0
A(A==0)=-1; % makes 0 -1