clc
clear all
[data1,data3]=textread('E:\RSWeb\mahoyt數據集\movielens\u.user','%s%*d%s%*s%*s','delimiter', '|');
fuhao = cellstr(repmat(',',length(data1),1));
data = cellfun(@strcat, data1, fuhao, data3,'Unif', 0 );
% % save 'E:\RSWeb\mahoyt數據集\movielens\newuser.txt' data;
% save 'E:\RSWeb\mahoyt數據集\movielens\newuser.txt' data1 ;
% % dlmwrite('E:\RSWeb\mahoyt數據集\movielens\newuser.txt',cell2mat(data), '');
[nrows,ncols]= size(data);
filename = 'E:\RSWeb\mahoyt數據集\movielens\newuser.txt';
fid = fopen(filename, 'w');
for row=1:nrows
fprintf(fid, '%s\n', data{row,:});
end
fclose(fid);
原始數據是1|23|M|writer|450045,表示用戶1,23歲,男,作家,郵編450045。
讀取的時候不能直接load或者importdata,由於特殊分隔符的存在,只能督導第一列,所以用textread。
憑借第一列和第三列編程一列cell,比如"1,M"。
關鍵是如何吧“1,M”存入txt。
各種方法都不行,直接操作文件。
