我有两个数据。一个是实际的
Book2有六个名称(字符串),一遍又一遍地重复以匹配fulldata数据集条目。我想从fulldata中取出1000个样本,其中1000个样本的25%是“蓝色”,75%是“红色”,并使用Book2将其包含在名为
如何在MATLAB中实现这一点?
伪代码:
从Book2中选择250个蓝色样本,不确定如何“选择”250个随机的“蓝色”样本
再次从Book2中选择750个红色样本,同样不确定如何“选择”750个随机的“红色”样本
将蓝色和红色样本组合成子样本。
这是两个数据集的图片:
每一行在Book2中都与fulldata中的一行匹配。我想通过使用Book2,选择一定数量的“正常”和一定数量的“异常”(是的,我知道它们的命名不合适)数据从fulldata中提取出来,因为Book2是fulldata的索引并包含类标签。
因此,在我的数据集方面,可以这样更容易地说:
fulldata
,它是一个49625x6数字数据集,另一个是该数据的目标类别为 Book2
的索引,大小为49625x1。Book2有六个名称(字符串),一遍又一遍地重复以匹配fulldata数据集条目。我想从fulldata中取出1000个样本,其中1000个样本的25%是“蓝色”,75%是“红色”,并使用Book2将其包含在名为
sampledata
的新子样本中。如何在MATLAB中实现这一点?
伪代码:
从Book2中选择250个蓝色样本,不确定如何“选择”250个随机的“蓝色”样本
bluesample = indX(Book2,:)
或 Book2(indX,:)
不确定。再次从Book2中选择750个红色样本,同样不确定如何“选择”750个随机的“红色”样本
redsample = indX(Book2,;)
或 Book2(indX,:)
在这里也不确定。将蓝色和红色样本组合成子样本。
subsample = join(bluesample, redsample)
找到子样本的索引,从完整数据中创建样本数据:
sampledata = subsample(indX(fulldata), :) This line is probably wrong
这是两个数据集的图片:
每一行在Book2中都与fulldata中的一行匹配。我想通过使用Book2,选择一定数量的“正常”和一定数量的“异常”(是的,我知道它们的命名不合适)数据从fulldata中提取出来,因为Book2是fulldata的索引并包含类标签。
因此,在我的数据集方面,可以这样更容易地说:
Choose 250 random samples of the string "normal." from Book2 and log the row number.
Choose 750 random samples of the string "not normal." from Book2 and log the row number.
Combine the two random samples of row numbers together.
Make a new dataset (1000x6) using the combined row numbers (above) of fulldata.