2016-05-04 3 views
0

Я хочу удалить строки M+1 через N в DenseMatrix (DM_a ниже), чтобы произвести другую DenseMatrix (DM_b). Что-то вроде этого:Самый эффективный способ удалить ряд строк из DenseMatrix?

       K 
DM_a = 0 +-------------------+ 
      |     | 
      |     | 
      |     | 
     M |     | 
      |     | 
      |     | 
      |     | 
     N +-------------------+ 



           K 
DM_b = 0 +-------------------+ 
      |     | 
      |     | 
      |     | 
     M +-------------------+ 

Это лучший (самый эффективный), чтобы сделать это с нарезка, как это: val DM_b = DM_a(0 to M, ::) или я должен отобразить padRight для каждого столбца DM_a?

ответ

1

матрица среза:

DM_a(0 until M, ::) 
+0

Awesome, спасибо! Итак, в чем разница между версиями «до» и «до» среза? –

+0

до включительно, пока не будет исключительным (обратите внимание, что параметры для среза - это просто объекты scala.Range) – dlwh

+0

А, я вижу, спасибо. Итак, не хочу ли я от 0 до М, так как я хотел удалить строки, начинающиеся с строки 'M + 1'? Или, альтернативно, я думаю, мне понадобится «0 до M + 1», верно? –