Как я могу транспонировать матрицу в Groovy? - PullRequest
4 голосов
/ 27 июля 2011

Мне нужно переместить массив из строк в столбцы и столбцы в строки

def mtrx = [
   [1,2,3],
   [4,5,6]
]
//mtrx.anyMethod()
//expected result
//[[1,4],[2,5],[3,6]]

Знаете ли вы прямой метод из него?

Я не знаю метод Groovy, который транспонируетэтот случай;если вы знаете другой способ транспонирования, пожалуйста, скажите мне.

Ответы [ 2 ]

11 голосов
/ 27 июля 2011

Groovy списки имеют метод transpose():

def transposed = mtrx.transpose()
0 голосов
/ 27 июля 2011

Это может быть немного излишним для того, что вам нужно, но библиотека Apache Commons Math включает в себя комплексный модуль линейной алгебры. руководство пользователя для модуля линейной алгебры включает простой пример умножения матриц.Вы можете включить этот модуль в свой проект Grails, добавив:

runtime ('org.apache.commons','commons-math','2.2') 

в файл BuildConfig.groovy.

...