You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何将嵌套matrix结构转换为单层级数值列表?

从嵌套matrix结构提取数值的可行实现方法

以下默认你提到的matrix是NumPy库的矩阵对象,根据使用场景不同,有以下几种实现方案:

  • 方案1:列表推导式直接索引取值(运行时对象处理首选,性能最优)
    每个嵌套结构最内层是只有1个元素的二维matrix,直接按索引取值即可,示例代码:
    import numpy as np
    # 假设input_data是已经加载的输入对象
    input_data = [[np.matrix([[0.57863575]])], [np.matrix([[0.57170157]])], [np.matrix([[0.44320711]])], [np.matrix([[0.37195535]])]]
    result = [item[0].item() for item in input_data]
    
    其中item()方法会直接把NumPy标量转为Python原生数值类型,也可以替换为item[0][0,0]实现一样的效果。
  • 方案2:map函数批量处理
    适合偏好函数式写法的场景,代码更简洁:
    result = list(map(lambda x: x[0].item(), input_data))
    
  • 方案3:正则匹配提取(仅适用于原始字符串形式的输入)
    如果你拿到的是未解析的字符串格式输入,不需要加载为Python对象,直接匹配所有浮点数即可:
    import re
    input_str = "[[matrix([[0.57863575]])], [matrix([[0.57170157]])], [matrix([[0.44320711]])], [matrix([[0.37195535]])]]"
    result = list(map(float, re.findall(r"\d+\.\d+", input_str)))
    

以上三种方案输出都符合你给出的预期结果[0.57863575, 0.57170157, 0.44320711, 0.37195535]。

内容的提问来源于stack exchange,提问作者Jayant Kalyan

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.23 14:54:01