将矩阵转换为元组python



我有一个名为w的矩阵,它看起来像这样:

in:  print(w)
out: [[0.0053691  0.00328692]]

它具有类型<类"numpy.matrix">

in:  print(type(w))
out: <class 'numpy.matrix'>

我希望它是一个元组,但一个简单的w=tuple(w(不能完成任务:

in:  w=tuple(w)
in:  print(w)
out: (matrix([[0.00624969, 0.00413867]]),)

但我希望输出是这样的:

in:  print(w)
out: (0.00624969, 0.00413867)

我做错了什么?

你有一个二维的东西。

你可以创建一个类似的列表

>>> w.tolist()
[[0.0053691, 0.00328692]]

这可能已经足够好了。如果你真的想提取内部的薄纱

>>> tuple(w.tolist()[0])
(0.0053691, 0.00328692)

您是;存储";将矩阵转换为元组,而不是将其转换。您可以执行以下

tuple(*w.A)
#(0.00624969, 0.00413867)

星型表达式(*w.A(通过迭代来解压缩数组值的外部维度。点击此处阅读更多信息。

最新更新