如何按元素求平方根矩阵?

羊驼毛:

我打算使用Pow但它似乎只接受整数值的幂。

例如,m矩阵a。的逐元素平方根矩阵

a = ⎡ 4   9⎤
    ⎣16  25⎦

m = ⎡2  3⎤
    ⎣4  5⎦
peterSO:

对于矩阵的逐个元素的平方根,编写如下代码:

package main

import (
    "fmt"
    "math"

    "gonum.org/v1/gonum/mat"
)

func main() {
    a := mat.NewDense(2, 2, []float64{
        4, 9,
        16, 25,
    })
    fa := mat.Formatted(a, mat.Prefix("    "), mat.Squeeze())
    fmt.Printf("a = %v\n\n", fa)

    m := new(mat.Dense)
    m.Apply(func(i, j int, v float64) float64 { return math.Sqrt(v) }, a)
    fm := mat.Formatted(m, mat.Prefix("    "), mat.Squeeze())
    fmt.Printf("m = %v\n\n", fm)
}

输出:

a = ⎡ 4   9⎤
    ⎣16  25⎦

m = ⎡2  3⎤
    ⎣4  5⎦

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

TOP 榜单

热门标签

归档