matlab 查看矩阵中是否有0, 或者负数
查看矩阵中是否有0元素:
~all(any(x,1)), 有0元素则返回true, 没有0元素则返回false
查看矩阵中是否有负数:
~isempty(find(x < 0)), 有负数则返回true, 没有负数则返回false
L = logical(A)
将 A
转换为一个逻辑值数组。A
中的任意非零元素都将转换为逻辑值 1
(true
),零则转换为逻辑值 0
(false
)。
matlab读取矩阵中的数据
A(1,:),即提取矩阵A的第1行元素
A( 1:i, 1:j) 其中括号内,行列以逗号隔开,逗号前的控制行,逗号后的控制列 比如说读取矩阵A的前两行两列
A(:,1:12)提取矩阵A中1到12列中所有行的数据
matlab生成随机0,1/1,-1序列
input = round(rand(1,Modulation_Mode*nu));%随机产生0 1序列作为数据
inputi= 1-2*input;
matlab用randi()函数用于生成均匀分布的伪随机整数
randi(imax,n):生成n*n的小于imax的伪随机矩阵;
randi(imax,m,n) 或 randi(imax,[m,n]]):生成m*n的伪随机矩阵;
randi(imax,m,n,p,...) 或 randi(imax,[m,n,p,...]):生成m*n*p*...的伪随机矩阵;
randi(imax,size(A)):生成和A同维的伪随机矩阵;
randi([imin,imax],n):生成n*n的,元素取值范围为[imin,imax]的伪随机矩阵。
matlab中reshape的用法
1.就是变换成特定维数的矩阵
2.是按照列的顺序进行转换的,也就是第一列读完,读第二列,下面请看具体例子:
A =
1 4 7 10
2 5 8 11
3 6 9 12
B = reshape(A,2,6)
B =
1 3 5 7 9 11
2 4 6 8 10 12
B = reshape(A,2,[])
B =
1 3 5 7 9 11
2 4 6 8 10 12
matlab中fliplr的用法
matlab中dec2bin十进制转换成二进制
matlab中str2num
c_bin = dec2bin(c_init,31); %十进制数转换成一个字符串形式表示的二进制数
c_bits = str2num(c_bin(:)).';%二进制字符串转化为数字