我有一个数据文件,其中包含50个用记事本编写的2-D数据点。我想在聚类算法中使用它来聚类这50个点。我该如何导入这个文件?有什么其他方法可以在程序中使用它吗?
答案 0 :(得分:1)
您可以将数据另存为.csv文件,也可以将其保存到Excel电子表格中并使用xlsread()
。有关详细信息,请参阅此处:http://www.mathworks.com/help/techdoc/ref/xlsread.html
对于.csv案例,这篇文章应该有用:Fastest way to import CSV files in MATLAB
答案 1 :(得分:1)
想象一下,您有以下数据:
X = [randn(100,2)-1 ; randn(100,2)];
save data.mat X
然后就像做一样简单:
%# load data from MAT-file
load data.mat
%# cluster into K=2 clusters
C = kmeans(X,2);
%# show cluster assignment
gscatter(X(:,1), X(:,2), C)
答案 2 :(得分:1)
这取决于您如何格式化数据文件。你说它保存在记事本上但是没有太大帮助。根据您用作数据分隔符的内容,您可以使用dlmread函数将数据文件导入数组。例如,如果您的文件名为filename.dat并且已使用过;用于分隔此文件中每个数据项的字符,您可以使用
将数据读入矩阵A. A = dlmread("filename.dat",';');
我建议阅读matlab中关于dlmread函数的帮助文档。