【问题标题】:Converting Matlab cell into np array将 Matlab 单元格转换为 np 数组
【发布时间】:2021-04-22 21:59:15
【问题描述】:

我有一个 .mat 文件,里面只有以下数据: cell{Name,Matrix(1610x10)} 我想在一个 numpy 数组中获取矩阵数据来处理它。 谢谢

【问题讨论】:

标签: python matlab numpy


【解决方案1】:

您可以将数据保存为 CSV 并使用 python 读取数据。 在此之后将其转换为一个 numpy 数组。

http://www.mikesoltys.com/2014/04/06/readingwriting-to-csv-in-matlab/

在python中:

csvData = []
with open("DATA.csv") as data:
    csv_reader_objekt = csv.reader(data)
    for row in csv_reader_objekt:
        csvData.append(row)

DataArray = np.array(csvData)

【讨论】:

  • 谢谢。但问题是我有大量文件要转换为 CSV。我的问题是,一旦我加载了文档并访问了单元格,我怎样才能获得数据矩阵?
  • 我试过这个: from scipy.io import loadmat arr = np.arange(1601*10).reshape(1601,10) annots = loadmat('examp.mat') 但是,我仍然不知道如何获得矩阵
  • 如果你使用np.reshape,你应该已经有了一个数据矩阵。啊loadmat我记得我第一学期用过这个。您可以尝试打印出矩阵的形状来检查它print(arr.shape)
猜你喜欢
  • 1970-01-01
  • 2012-06-14
  • 1970-01-01
  • 2018-08-28
  • 1970-01-01
  • 2017-05-22
  • 1970-01-01
  • 1970-01-01
  • 2020-10-18
相关资源
最近更新 更多