0

当您不知道要引用矩阵还是向量时,是否有调用行的通用方法?

我想将结果子集到精度大于 0.5 的那些,然后选择具有最高灵敏度的子集的行。我在一个循环中多次重复这个过程。我遇到的问题是,在模型的某些运行中,许多行结果的精度大于 0.5,而在某些运行中,只有一行的精度大于 0.5。

为了以最大的准确性调用该行,我编写了代码。

# Subset matrix to just rows with accuracy greater than .5
acc_ID = which(new_data[,"accuracy"] >= 0.5)
new_data2 = new_data[acc_ID,] 

## Identify which row has the highest sensitivity   
max_sensitivity_ID = which(new_data2[,"sensitivity"] == max(new_data2[,"sensitivity"]))[1]

问题来自最后一行。如果只有一行精度 > .5。然后我需要删除逗号。

注意:这是一个大数据情况,我不会上传可复制的数据示例。我认为那里的某个人会知道一种在不复制问题的情况下调用行的通用方法。

4

1 回答 1

2

用于drop=FALSE确保new_data2始终是一个矩阵。

new_data2 = new_data[acc_ID,,drop=FALSE]
于 2013-09-18T19:57:45.870 回答