我有一个小问题,我无法从我的进程中反转奇异值解压缩,但我想知道我是否可以预先映射数据。
我的一个数据集名为fulldata。我将svds应用于这样的数据:
%% dimensionality reduction
columns = 6
[U,S,V]=svds(fulldata,columns);
然后我从数据集中随机选取1000行:
rows = 1000;
columns = 6;
%# pick random rows
indX = randperm( size(fulldata,1) );
indX = indX(1:rows);
%# pick random columns
indY = indY(1:columns);
%# filter data
data = U(indX,indY);
我需要找到一种方法,我可以告诉它从全部数据中挑选出哪1000行?也许输出数据从1 - 1000与行数来自fulldata。有没有人知道如何做到这一点?
答案 0 :(得分:2)
实际上你几乎就在那里:
rows = 1000;
indX = randperm( size(fulldata,1) );
indX = indX(1:rows);
dataSample = fulldata(indX, :);
dataSample现在将包含indX中指定的所有fulldata行。