Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
Форум программистов > Математические пакеты > [matlab]Генерация матрицы и её изменение |
Автор: ddj 22.3.2012, 17:24 | ||
Добрый день, Генерирую матрицу:
Получаю матрицу. Например: 0 1 1 1 1 0 0 0 1 0 0 0 0 1 0 0 Как сейчас с этой матрицы получить такую: 0 1/3 1/3 1/3 1 0 0 0 1 0 0 0 0 1 0 0 Поясню: сумма строк ровна 1, тоесть 1/k, где k - количество едениц в строке. Спасибо. |
Автор: W4FhLF 22.3.2012, 20:12 | ||
Это вы хотите сделать?
|
Автор: ddj 23.3.2012, 10:10 |
в этом направлении. Только визде в матрице, если например 2 и 3 строки матрицы имели бы не по одной 1 а по две, то там тоже нада было уменшить на k. 0 1 1 0 1 1 1 1 0 0 0 0 1 1 1 0 ---> 0 1/2 1/2 0 1/4 1/4 1/4 1/4 0 0 0 0 1/3 1/3 1/3 0 |
Автор: W4FhLF 23.3.2012, 11:10 |
Пройдитесь по строкам и примените операцию к каждой строке. Отдельно нужно учесть случай когда единиц нет вообще, чтобы не получилось деление на ноль. |
Автор: ddj 23.3.2012, 12:24 | ||||
что сдесь значет эта двойка ? (find(v==1),2) ?
А как с матрицы достать все строки ? Если их будет например: 100 - 500 |
Автор: W4FhLF 23.3.2012, 13:43 | ||
> doc size Строки достать в цикле. i-ый вектор со строкой из матрицы можно получить так: row_i = A(i,: ) |
Автор: Одуванчик 29.5.2013, 23:53 |
Помогите написать программу в МатЛабе чтобы: Заменить столбцы,имеющие четное количество отрицательных элементов столбцом,где находится минимальный элемент матрицы 9х14. П.С. Без вас не справлюсь( |