2015-10-18 8 views
-3

С учетом п выборки 100, как мы генерируем эти случайные выборки в сегменте линии ниже с использованием MATLABкак генерировать п выборок из линейного сегмента с помощью Matlab

line_segement:

х между -1 и 1 , у = 2

+0

Вы хотите сгенерировать n случайных выборок (значений) между -1 и 1? –

ответ

1

Если вы хотите создать n случайных выборок между до заданного предела (в вашем вопросе -1 и 1), вы можете использовать функцию rand.

Вот пример:

% Define minimum x value 
x_min=-1 
% Define maximum x value 
x_max=1 
% Define the number of sample to be generated 
n_sample=100 
% Generate the samples 
x_samples = sort(x_min + (x_max-x_min).*rand(n_sample,1)) 

В примере, функция sort вызывается для сортировки значений в порядке, чтобы иметь ряд ascendent.

x_min и (x_max-x_min) используются для «сдвига» серии случайных величин, так что он принадлежит к нужному интервалу (в данном случае -1 1), так как rand возвращает случайное число на открытом интервале (0,1).

Если вы хотите иметь матрицу XY составленную случайных выборок и определенной постоянной величины у (2):

y_val=2; 
xy=[x_samples ones(length(x_samples),1)*y_val] 

plot([x_min x_max],[y_val y_val],'linewidth',2) 
hold on 
plot(xy(:,1),xy(:,2),'d','markerfacecolor','r') 
grid on 
legend({'xy segment','random samples'}) 

(на картинке, только 20 образцов были участок, чтобы сделать его более ясным)

enter image description here

Надеется, что это помогает.

+0

Thanks.This было очень полезно –

+0

Добро пожаловать! Счастлив, что я тебе полезен. –