Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/haskell/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Haskell-矩阵类型之间的转换_Haskell_Matrix - Fatal编程技术网

Haskell-矩阵类型之间的转换

Haskell-矩阵类型之间的转换,haskell,matrix,Haskell,Matrix,我正在使用Numeric.LinearAlgebra库。这是我的代码: customConv :: Matrix Z customConv = conv2 ((3><3)[1..]) ((1><1)[1.1]) customConv::Matrix Z customConv=conv2((3>这取决于您希望如何对值进行四舍五入。 如果要舍入到最接近的整数,则可以使用cmap round: λ> cmap round $ conv2 ((3><3)[1

我正在使用
Numeric.LinearAlgebra
库。这是我的代码:

customConv :: Matrix Z
customConv = conv2 ((3><3)[1..]) ((1><1)[1.1]) 
customConv::Matrix Z

customConv=conv2((3>这取决于您希望如何对值进行四舍五入。 如果要舍入到最接近的整数,则可以使用
cmap round

λ> cmap round $ conv2 ((3><3)[1..]) ((1><1)[1.1 :: R]) :: Matrix Z
(3><3)
 [ 1, 2,  3
 , 4, 6,  7
 , 8, 9, 10 ]
这意味着它就像
fmap
一样,只限于hmatrix容器可以容纳的类型

相反,如果要裁剪小数,可以使用
toZ

λ> toZ $ conv2 ((3><3)[1..]) ((1><1)[1.1 :: R]) :: Matrix Z
(3><3)
 [ 1, 2, 3
 , 4, 5, 6
 , 7, 8, 9 ]

这意味着它会将任何内容转换为
Z
的容器。它通过裁剪小数来实现这一点。

这取决于您希望如何对值进行四舍五入。 如果要舍入到最接近的整数,则可以使用
cmap round

λ> cmap round $ conv2 ((3><3)[1..]) ((1><1)[1.1 :: R]) :: Matrix Z
(3><3)
 [ 1, 2,  3
 , 4, 6,  7
 , 8, 9, 10 ]
这意味着它就像
fmap
一样,只限于hmatrix容器可以容纳的类型

相反,如果要裁剪小数,可以使用
toZ

λ> toZ $ conv2 ((3><3)[1..]) ((1><1)[1.1 :: R]) :: Matrix Z
(3><3)
 [ 1, 2, 3
 , 4, 5, 6
 , 7, 8, 9 ]
这意味着它将把任何东西转换成
Z
的容器。它通过裁剪小数来实现