我有一个数据文件,其中包含用记事本编写的 50 个二维数据点。我想在聚类算法中使用它来聚类这 50 个点。如何导入此文件?有没有其他方法可以在程序中使用它?
问问题
1028 次
3 回答
1
这取决于您如何格式化数据文件。您说它保存在记事本上,但这并没有太大帮助。根据您用作数据分隔符的内容,您可以使用 dlmread 函数将数据文件导入到数组中。例如,如果您的文件名为 filename.dat 并且使用了 ; 用于分隔此文件中的每个数据项的字符,您可以使用将数据读入矩阵 A
A = dlmread("filename.dat",';');
我建议阅读有关 matlab 中 dlmread 函数的帮助文档。
于 2012-05-28T12:30:40.543 回答
1
您可以将数据保存为 .csv 文件,也可以将其保存到 Excel 电子表格并使用xlsread()
. 有关更多信息,请参见此处:http: //www.mathworks.com/help/techdoc/ref/xlsread.html
对于 .csv 案例,这篇文章应该很有帮助:Fastest way to import CSV files in MATLAB
于 2012-05-28T06:06:29.743 回答
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)
于 2012-05-28T06:07:12.547 回答