2015-07-15 2 views
0

Я буду генерировать большие матрицы, основанные на скрипте, и эти матрицы являются m x n матрицами, иногда получающимися довольно большими. Мне было интересно, можно ли вообще указать две границы, b1 и b2, и удалить все столбцы за пределами этих двух границ.Удаление столбцов между двумя границами в матрице в Matlab?

Так сказать, что я был

0.1 0.2 0.3 0.24 0.11 0.09 0.12 0.2 
0.7 0.3 0.03 0.43 0.15 0.19 0.99 0.04 
0.9 0.2 0.32 0.14 0.15 0.01 0.91 0.12 

И я хотел, чтобы все между 3-й и 5-й колонке, я должен был бы

0.3 0.24 0.11 
    0.03 0.43 0.15 
    0.32 0.14 0.15 
+1

Usw оператор двоеточия для индексации матрицы – Daniel

ответ

2

Вот что двоеточие (:) оператор для (см documentation). Вы можете выбрать диапазон индексов по определенному размеру, указав границы на каждой стороне двоеточия. В вашем случае, если вы хотите, чтобы столбцы между b1 и b2, вы могли бы сделать

subMat = mat(:, b1:b2); 

Если вы не указали никаких границ, то она будет выбирать все вдоль этого измерения. Таким образом, интуитивно это будет выбирать все строки, а все столбцы между b1 и b2

+0

Большое спасибо –

Смежные вопросы