1)MATLAB中的取整問題
MATLAB中的小數取整有四個函數:
floor(), 取朝負無窮方向靠近的整數;
ceil(), 取朝正無窮方向靠近的整數;
round(), 取最近的整數(相當於四捨五入);
fix(), 取離0最近的整數。
Example:
A = [ -2.0, -1.9, -1.55, -1.45, -1.1, 1.0, 1.1, 1.45, 1.55, 1.9, 2.0 ];
floor(A) = [-2, -2, -2, -2, -2, 1, 1, 1, 1, 1, 2];
ceil(A) = [-2, -1, -1, -1, -1, 1, 2, 2, 2, 2, 2];
round(A) = [-2, -2, -2, -1, -1, 1, 1, 1, 2, 2, 2];
fix(A) = [-2, -1, -1, -1, -1, 1, 1, 1, 1, 1, 2];
2)MATLAB中把一個變量保存成txt文件
dlmread(‘filename’); 讀取文件名爲filename的文件中的數據;
dlmwrite('filename', variablename, ' '); 就是將變量variable(一般爲矩陣)寫入文件名爲filename的文件中,' '表示varibale中每行的元素之間用空格隔開,如果沒有這個默認使
用','隔開。
3)MATLAB中刪除矩陣的一行或者一列
a = eye(4);
a(4,:) = [];
4)MATLAB中產生均值和方差一定的隨機數
mean = 0.6
var = 0.1
x = 0.6 + sqrt(0.1)*randn(2,3); 產生均值爲mean,方差爲0.1的隨機數矩陣。
驗證用mean2(x)求矩陣中所有元素的均值,std2(x)求矩陣中所有元素的標準差。
mu = [0.1 0.2];
sigma = [1 0; 0 1];
y = mvnrnd(mu,sigma,500); 從多變量正態分佈中選取數據,產生500組均值爲mu,協方差矩陣爲sigma的隨機數。