Python 是否要显示数据帧中某一特定行的索引

Python 是否要显示数据帧中某一特定行的索引,python,pandas,Python,Pandas,我有一个需要迭代的数据帧,我有一个方法来找到我要寻找的值。但我只需要相关的索引 假设我有如下数据帧: Index values Q1 45 Q2 46 Q3 11 假设我的代码找到46作为我要查找的值,但我只希望相关索引放入字符串中。问题2 我知道这应该很简单,但我浏览了不同的论坛和熊猫图书馆,但没有找到一个简单的方法来做到这一点。到目前为止,我的代码是这样的: for ind in GDP_df.index: prev_GDP = (GDP_df.iloc[pos1-1:

我有一个需要迭代的数据帧,我有一个方法来找到我要寻找的值。但我只需要相关的索引

假设我有如下数据帧:

Index values
 Q1  45
 Q2  46
 Q3  11
假设我的代码找到46作为我要查找的值,但我只希望相关索引放入字符串中。问题2

我知道这应该很简单,但我浏览了不同的论坛和熊猫图书馆,但没有找到一个简单的方法来做到这一点。到目前为止,我的代码是这样的:

for ind in GDP_df.index:
    prev_GDP = (GDP_df.iloc[pos1-1:, 0:1]).values[0].item()
    current_GDP = (GDP_df.iloc[pos1:, 0:1]).values[0].item()
    pos1 = pos1+1

    if prev_GDP > current_GDP:
        rec_start = (GDP_df.iloc[pos1:, 0:1])
这就是我被困的地方。这里应该使用什么语法将索引仅放入字符串中?
rec_start
应该保存索引,在这种情况下为Q2


请告知。

由于可能有多个索引映射到您的值,因此您应该返回一个列表:

GDP_df.iloc[pos1:,0:1].index.tolist()

我建议您使用.index来获取您感兴趣的索引。。。所以GDP_df.iloc[pos1:,0:1]。索引。还有,为什么是for循环?通常最好避免for循环,但我无法确切说出你想要实现什么;Pandas和numpy有矢量化的方法,可以使事情变得更快。如果要同时查看索引和值,请使用
作为GDP_df[“值”]中的ind,val。iteritems():
。但更好的方法是使用Pandas操作(将
GDP_-df[“values”]
GDP_-df[“values”].shift()进行比较,以查找值小于前一行的行。谢谢,我知道.shift(),但我不想看到每一行的比较,在en,我的代码应该只返回GDP衰退开始的一年和一个季度。