当前位置: 首页 > 知识库问答 >
问题:

根据条件获取行ID

萧琛
2023-03-14

我有以下数据帧:

Date          best    a    b    c    d
1990-01-01    a       5    4    7    2
1991-01-02    c       10   1    2    0
1992-01-03    d       2    1    4    12
1993-01-04    a       5    8    11   6

我希望获得行ID,其中df['Date'='1992-01-03']

预期收益为2

有什么想法吗?

共有2个答案

南门向荣
2023-03-14

也可以使用np.where

np.where(df.Date=='1992-01-03')
廖弘伟
2023-03-14

为此,您需要访问数据帧的索引并获取其idhttps://stackoverflow.com/a/21800319/3921457 假设您的对象名为df,您可以执行以下操作:

ids = df.index[df['Date'] == '1992-01-03'].tolist()
print(ids)
# [2]

如果Date已经是DataFrame的索引,则只需键入:df=df.reset_index()即可更改为数字索引

 类似资料:
  • 问题内容: 我想获取基于条件选择的数据帧行数。我尝试了以下代码。 输出: 输出显示数据帧中每一列的计数。相反,我需要获得满足以上所有条件的单一计数?这该怎么做?如果您需要有关我的数据框的更多说明,请告诉我。 问题答案: 您要的是所有条件都为真的条件,所以答案是len,除非我误解了您的要求

  • 问题内容: 假设我有一个像这样的数据框 原始表更加复杂,具有更多的列和行。 我想获得满足某些条件的第一行。例子: 获取A> 3的第一行(返回第2行) 获取A> 4 AND B> 3的第一行(返回第4行) 获取第一行,其中A> 3 AND(B> 3 OR C> 2)(返回第2行) 但是,如果没有满足特定条件的行,那么我想在我按A降序排序(或者其他情况下按B,C等排序)后得到第一行 获取A> 6的第一

  • 我有以下目录结构: 我想得到以下输出: 我有以下代码(如下),这是低效的,因为它打印出来: 以下是Java代码: 过滤器:

  • 嗨,伙计们,我正在使用Laravel5.5,我有两个表,用户和服务 用户表 ID 名称 电子邮件 密码 地址 城市 国家 邮政编码 null 提前谢了。热烈问候:阿卜杜拉·沙希德。

  • 问题内容: 有没有一种方法可以对 field1 = x* 和 field2 = y的文档执行删除操作 ? *** 我看到了删除功能,但没有附带。如果使用事务,则存在get和delete,但get似乎不接受“ where”子句。 我希望我在文档中缺少一些内容。 谢谢 问题答案: 为此,您需要先创建所需的查询,然后才使用如下方法:

  • 问题内容: 我有以下数据框 基本上我可以如下过滤行 我可以如下所示删除/删除一行 但是我想根据条件删除一定数量的行,我该怎么做? 问题答案: 最好的是但需要反转条件-使所有值相等且更高,如下所示: 与功能相同: 另一种可能的解决方案是通过以下方法反转掩码: