Python Pandas:基于criteri选择行

2024-05-16 19:27:42 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个pandas数据帧,格式如下:

df.head()

        y   y_pred
599     0   0
787     9   9
47      2   2
1237    1   1
1069    6   6

我想找到行/索引号-其中y!=y_预测。在

我正试图通过Select来完成,但无法做到。请帮忙。在

TIA公司


Tags: 数据pandasdf格式公司selectheadpred
2条回答

使用^{}

df = df.query('y != y_pred').index

样品:

^{pr2}$

带有^{}的解决方案是:

df1 = df[df.y != df.y_pred].index
print (df1)
Int64Index([599, 1069], dtype='int64')

或者另一个answer。在

对于检查不同的值:

print (df.query('y != y_pred'))
      y  y_pred
599   0       1
1069  6       3

print (df[df.y != df.y_pred])
      y  y_pred
599   0       1
1069  6       3

尝试:

df.index[df.y != df.y_pred]

让我们改变你的样本数据

^{pr2}$

那就试试我们的代码

df.index[df.y != df.y_pred]

Int64Index([599, 1237], dtype='int64')

为了提高效率,请使用底层numpy数组

df.index.values[df.y.values != df.y_pred.values]

array([ 599, 1237])

您可以使用

df.loc[(df.y != df.y_pred).values]

      y  y_pred
599   1       0
1237  1       0

相关问题 更多 >