Приложение A. Обработка данных на компьютере 172
> X:=RandomVariable(Binomial(100, 1/3)):
> x:=Sample(X, 10);
> y:=Sample(X, 10);
x := [29., 37., 31., 34., 29., 35., 30., 35., 36., 36.]
y := [33., 27., 30., 40., 28., 38., 34., 46., 27., 33.]
Преобразуем выборки.
> z1:=2*x-3*y; # Линейное преобразование
z1 := [−41., −7., −28., −52., −26., −44., −42., −68., −9., −27.]
> z2:=map(ln, x); # Логарифмическое преобразование
z2 := [3.367295830, 3.610917913, 3.433987204, 3.526360525, 3.367295830,
3.555348061, 3.401197382, 3.555348061, 3.583518938, 3.583518938]
Отберем наблюдения, большие 30. Первый аргумент функци й
Select и Remove – булева функция, задающая правило отбора. Она
должна возвращать true (истина) в сл учае, если аргумент удовле-
творяет условию отбора, и false (ложь) иначе.
> x1:=Select(t->is(t>30), x);
> x2:=Remove(t->is(t<=30), x);
x1 := [37., 31., 34., 35., 35., 36., 36.]
x2 := [37., 31., 34., 35., 35., 36., 36.]
Как вид им , результат получается одинаковый.
Объединим выборки x и y:
> z:=Join([x,y], outputoptions=[subtype=Vector[row]]);
z := [29., 37., 31., 34., 29., 35., 30., 35., 36., 36., 33., 27., 30., 40., 28., 38., 34.,
46., 27., 33.]
Функция Join может объединять массивы различными способа-
ми, в том числе, получая в итоге матрицу. Нам же необходим резуль-
тат в виде вектора, поэтому мы добавили соответствующую опцию.
Найдем объем получившейся выборки: