Python与MATLAB间嵌套列表数据交互及格式转换问题求助
Python与MATLAB间嵌套列表/Cell Array互转问题
核心问题
- MATLAB导出的.mat文件中包含位置不确定的Cell Array,使用mat73库加载到Python后,这类结构会转为长度不一致的嵌套列表
- 尝试用scipy保存该数据时,无法将其转回MATLAB可识别的Cell Array,只能生成普通数组
数据结构示例
dat = { 'k1': { 'k11': [1,2,3], 'k12': [[1,2],[1],[2,2]] # 问题来源:子列表长度不统一的嵌套结构 }, 'k2': [] # 实际数据中存在更多层级更深、位置无规律的同类嵌套结构 }
现有方案的痛点
曾尝试通过填充嵌套列表至统一长度来规避问题,但由于这类结构的位置不确定、嵌套层级复杂,需要先全局定位所有目标结构再处理,操作步骤繁琐,效率低下。
需求
寻求以下任一解决方案:
- Python端可直接处理不等长嵌套列表,并保存为MATLAB能识别为Cell Array格式的库
- MATLAB端可直接加载Python保存的这类不等长嵌套列表对象的技巧
内容的提问来源于stack exchange,提问作者Lily
相关产品推荐
相关产品推荐

