在matlab中加载数据集进行knn分类



大家好,实际上我想在matlab中加载这个数据集,以便在上面执行knn分类,但我不知道如何做到。我已经尝试过加载和readtable。。。但它不起作用,然后我尝试了这个代码

FID=fopen('file','rt');
a=textscan(FID,''...);

但事实上,我找不到什么是文本格式来获取我想要的数据,所以这是一条死胡同,任何人都可以帮助我吗

这就是我的数据文件内部的样子在此处输入图像描述

这是数据集文件http://lms.ui.ac.ir/public/group/a7/b2/06/6a5fb_24fb.gz

也许您可以尝试以下方法:

编辑:代码现在正确导入文件

FID = fopen('toy.m','rt');
data = {};
i = 1;
while ~feof(FID)
line = fgetl(FID);
line = fgetl(FID);
if feof(FID)
break;   
end
%sprintf('%d %s', i, line) %debug
if (isempty(line))
headers = 3;
elseif (line(1) ~= '#')
headers = 2;
else
headers = 1;
end
rows = textscan(FID, '%s %s %d', 1, 'headerlines', headers);
data{i} = cell2mat(textscan(FID, '', rows{3}, 'headerlines', 2));
i = i + 1;
end
fclose(FID);
fprintf('File contained %d blocks of datan', i);
fprintf('To access a value in cell "data", for example value (1,2) inside the second matrix, digit "data{2}(1,2)": ');
data{2}(1,2)

最新更新