1

Incanter 行列を出力する関数を考えてみましょう。

関数からの出力を含むマトリックスの例を次に示します。

A 6x4 matrix 
-4.77e-01 8.45e-01  1.39e-01 -9.83e-18
 8.55e-01 2.49e-01  1.33e-01  2.57e-17
-2.94e-03 6.60e-03 -9.63e-01  1.16e-16
...
 6.64e-09  2.55e-08  1.16e-07 -1.11e-16
-1.44e-01 -3.33e-01  1.32e-01 -7.07e-01
-1.44e-01 -3.33e-01  1.32e-01  7.07e-01

ポイントを表すマトリックスの行の分析を続けたいと思います。Incanter マトリックスにフィードしたい関数は、ネストされたベクトルを入力として受け取ります。

したがって、関数は上記のデータをフォームで必要とします

[[-4.77e-01 8.45e-01  1.39e-01 -9.83e-18]  [8.55e-01 2.49e-01  1.33e-01  2.57e-17]
 [-2.94e-03 6.60e-03 -9.63e-01  1.16e-16]  [6.64e-09  2.55e-08  1.16e-07 -1.11e-16]
 [-1.44e-01 -3.33e-01  1.32e-01 -7.07e-01] [-1.44e-01 -3.33e-01  1.32e-01  7.07e-01]]

インカンター行列表現からネストされたベクトル構造への変換で、実行方法が不明です。データの表現を変換する簡単な方法はありますか?

4

1 に答える 1

2

組み込みto-vect関数でそれを行うことができます:

(to-vect m)

または組み込みto-list関数を使用:

(to-list m)

どちらの関数も、行列が与えられるとベクトルのベクトルを生成します。

=> (def m (matrix [[1 2] [3 4]]))
 A 2x2 matrix
 -------------
 1.00e+00  2.00e+00 
 3.00e+00  4.00e+00 

=> (to-vect m)
[[1.0 2.0] [3.0 4.0]]
=> (to-list m)
[[1.0 2.0] [3.0 4.0]]
于 2014-03-24T17:00:36.743 に答える