我是新手numpy ,尝试筛选样本的子集时遇到了麻烦。
我有一个形状为(1000,12)的矩阵。也就是说,每个样本有一千个数据,每个数据都有十二个数据列。我想创建两个矩阵,一个包含所有离群值的样本,另一个包含所有不是离群值的元素。产生的矩阵应该具有这个形状:
我有一个形状为(1000,12)的矩阵。也就是说,每个样本有一千个数据,每个数据都有十二个数据列。我想创建两个矩阵,一个包含所有离群值的样本,另一个包含所有不是离群值的元素。产生的矩阵应该具有这个形状:
norm.shape = (883, 12)
outliers.shape = (117, 12)
为了识别异常值,我使用以下条件:
cond_out = (dados[0:,RD_EVAL] > _max_rd) | (dados[0:,DUT_EVAL] > _max_dut)
即对于矩阵中的每一行,我寻找两列的值。如果其中一列高于某个阈值,则该行被视为异常值。关键在于,此条件具有形状(1000,)
,因此当我压缩原始矩阵时,得到一个(117,)
的结果。如何过滤矩阵,使结果为(117,12)
?也就是说,获得所有异常行的矩阵,但每行都包含所有数据列?