Я борюсь с домашним заданием по Matlab:
Напишите скрипт для выполнения следующих действий:
Создайте матрицу под названием оценки размера8 x 25, который содержит случайные числа типа double в диапазоне от 1 до 6.
Рассчитать среднее значение строк матрицы (mrow
), среднее значение столбцов матрицы (mcol
) и общее среднее (mall
) рангов матрицы.
Скопируйте матрицу grades
в новую переменную, в которой вы замените элементы в 5-й строке. и с 20 по 23 столбец с NaN. Снова вычислите общее среднее значение (mall_2
) этой матрицы, т.е. среднее из оставшихся значений.
Я выполнил задание 2-5, однако задание 1 не выполненоверный. Я не уверен, что я делаю неправильно. Я предполагаю, что это как-то связано с типом числа (double), но я не смог его преобразовать.
Мы должны представить нашу домашнюю работу онлайн-инструменту "Matlab Grader". Система говорит:
Матрица случайных чисел: переменные оценки имеют неверное значение.
Вот мой код:
% Generate matrix 'grades' with random numbers in the range 1 to 6
a = 1;
b = 6;
grades = (b-a).*rand(8,25) + a;
% calculate mean values 'mrow', 'mcol', 'mall'
mrow = mean(grades,2)
mcol = mean(grades,1)
mall = mean(grades(:))
% Replace elements with NaN
grades(5,20:23) = NaN
%Calculate mean of elements omitting NaN
mall_2 = mean(grades(:),'omitnan')