0

在下面的示例中,我似乎无法从 fulldata 中获取 UnseenTestdata 和 Testdata 的索引,有人可以帮忙吗?

pointsToPick = 49402;  %# Numbers to pick
rVec = randperm(494021);   %# Random permutation of datapoint indices (N=494021 in this case)  

UnseenTestdata = fulldata(rVec(1:pointsToPick),:); %# Random sample
Testdata = fulldata(rVec((pointsToPick+1):length(rVec)),:);

我需要列出 unseentestdata 来自的 fulldata 中的行号列表,并且与 testdata 相同。这与此处的前一个问题有关,没有索引,我无法弄清楚哪些类标签与 unseentestdata 和 testdata 一起使用。

4

1 回答 1

1

如果您不rVec(1:pointsToPick)想像@Tobold 所说的那样使用已经存储索引的方法,另一种方法是

[~,indx_uns]=ismember(UnseenTestdata, fulldata, 'rows');
[~,indx_test]=ismember(Testdata, fulldata, 'rows');

请注意,不使用第一个返回参数(因此用 标记~)。
indx_uns(n)将对应的 fulldata 行赋予 UnseenTestdata 的第 n 行。

此外,这里是相关 SO question 的链接

有关 ismember 的更多帮助:请参阅此链接

于 2012-11-17T14:24:44.550 回答