我已经构建了一个分类器,在标记的数据上进行了训练和测试。现在我想通过对数据集进行预测而不使用标签来进一步测试它。我自己已经知道这些标签,但是我想将它们移除以用于测试,并且使用0预测值打印出值,以便我可以比较自己的准确度。我使用下面的代码遍历我的数据集,并对DataFrame中的每一行进行预测;在新的DataFrame上使用受过训练的分类器
malware = set()
for index, row in dataset.iterrows():
res = clf.predict([row])
if res == 0:
malware.add(index)
print(malware)
f.write(str(malware) + "\n")
它似乎在工作,但它不是一个快速的过程,有没有更好的方法或任何我可以做的加快它?
你使用scikit学习?如果是这样,您可以传入整个数据框,结果将是一组标签。 – Ding
@Ding。我是耶,但是当我尝试在整个数据集上使用.predict时,我似乎无法打印出索引值,我得到的只是一组预测值。 –
假设你想获得预测标签为0的所有索引,使用'dataset.index [clf.predict(dataset)== 0]' – Ding