0

我有一个 10001 行的文本文件,其中第一行包含属性的名称,以下行包含值。属性类型是混合的(字符串和浮点数)并由 '\t' 分隔。

有谁知道将此类文本文件导入matlab并将这些数据组织成适当的结构以进行进一步分析的最佳方法是什么?

我想将这些数据用于某些数据挖掘应用程序,因此如果每列也可以包含元数据(变量类型、数字/分类值...),那将非常有用

感谢你的建议!

4

1 回答 1

2

如何按名称或整数索引对列进行索引?

对于第一种情况,最好的方法是使用结构数组。原始数据中每一行的数组元素。有两个问题需要回答:

  1. 字段将如何命名?你事先知道标题吗?所有标头字符串是否都是有效的 MATLAB 变量名称并且可以用作字段名称?genvarname在某些情况下,函数可能会有所帮助。

  2. 如何将数据矩阵作为输出textscan转换为结构数组?查看cell2structMATLAB 帮助中的函数。如果您的字段名称(标题)确实是动态的,那么您仍然可以cell2struct通过动态创建参数单元格然后调用cell2struct(args{:})

如果列是按数字索引的,则保留单元矩阵作为textscan.

对于元数据,我将使用另一个变量是结构或结构数组。

于 2010-08-05T17:02:07.793 回答