Theo bài giảng của Danilo Šćepanović - MIT Opencoursewares
Nội dung
3. Hình ảnh và phim mô tả
4. Gỡ lỗi - Debugging
1. Xác suất thống kê
Mỗi khi làm việc với một bảng số liệu, bạn cần đến các công cụ thống kê. MATLAB cung cấp các sẵn các hàm thông dụng như: mean, median, mode, var, cov,...
Ví dụ
>> scores = 100*rand(1,100); % Lấy 100 giá trị ngẫu nhiên nằm trong khoảng 0 - 100.
>> mean(scores) % Tính giá trị trung bình của 100 giá trị đó
>> median(scores) % Tìm trung vị
>> mode(scores) % Tìm mốt
Để biểu diễn dữ liệu dưới dạng một biểu đồ, dùng lệnh hist
>> hist(scores,5:10:95); % Tạo một biểu đồ cột biểu diễn số điểm nằm trong các đoạn chia bởi các điểm
%5, 10, 15, ... 95
>> N=histc(scores,0:10:100); % Trả về một vector hàng với mỗi phần tử là số phần tử nằm trong các
%khoảng [0,10), [10, 20), ...
>> bar(0:10:100,N,'r') % Sau đó vẽ đồ thị cột với lệnh bar
Tạo số ngẫu nhiên
Rất nhiều bài toán về thống kê cần đến việc tạo số ngẫu nhiên
MATLAB cung cấp các hàm tạo số ngẫu nhiên như sau:
rand: lấy số từ phân phối đều trên khoảng 0 đến 1
randn: lấy số từ phân phối chuẩn (Gauss)
random: dùng lệnh này có thể chọn thêm các phân phối khác cho việc tạo số ngẫu nhiên như phân phối Poisson, nhị thức, Wei Bull, ...
Để chọn vị trí của trung bình cộng và phương sai của dãy số ngẫu nhiên được tạo, sử dụng các cách đơn giản như trong ví dụ sau:
>> y=rand(1,100)*10+5; % Tạo 100 số ngẫu nhiên trong khoảng từ 5 đến 15.
>> y=floor(rand(1,100)*10+6); % Tạo 100 số nguyên ngẫu nhiên trong khoảng từ 0 đến 16
Ví dụ: Chúng ta sẽ mô phỏng chuyển động Brown của một hạt trên không gian 1 chiều. Các công đoạn như sau:
1. Tạo một vector 10000 phần tử bằng lệnh zeros để lưu vị trí của hạt sau 10000 lần mô phỏng.
2. Viết một đoạn mã gồm 1 vòng lặp để tính vị trí của hạt tại mỗi thời điểm.
Bắt đầu tại 0. Để nhận được vị trí mới, lấy 1 số ngẫu nhiên.
Nếu số này < 0.5 thì hạt sang trái (vị trí mới = vị trí cũ - 1), nếu > 0.5 thì hạt sang phải (vị trí mới = vị trí cũ +1).
Từ đó tính được vị trí mới của hạt.
Vẽ 1 biểu đồ gồm 50 cột để biểu diễn tần suất có mặt ở các vị trí mà hạt xuất hiện.
Hướng dẫn: Ta lập một file brown.m, nội dung:
x=zeros(10000,1);
for n=2:10000
if rand<0.5
x(n)=x(n-1)-1;
else
x(n)=x(n-1)+1;
end
end
figure
hist(x,50)