数据帧索引存在检查

时间:2019-05-06 23:02:19

标签: python matplotlib

当我执行以下代码时,它将生成水平线(根据需要),但是仅当my_data中存在此位置(可用索引位置)时(先前已过滤/选择的my_data)。

plt.axhline(y=my_data.loc[6805], color='green', linestyle='dashed')

我想写些类似的东西:

If my_data.loc[6805] is not None:
   plt.axhline(y=my_data.loc[6805], color='green', linestyle='dashed')

如何检查索引位置是否可用?

1 个答案:

答案 0 :(得分:2)

1]错误异常处理

  • 您可以使用错误异常处理来实现此目的
  • 如果该位置不存在,那么您将获得KeyError:
  • 尝试-例外是您要寻找的

    try:
        mplt.axhline(y=my_data.loc[6805], color='green', linestyle='dashed')
    except:
        pass
    

2]检查6805是否为索引 [仅当6805为索引时]

  • 您可以做的另一件事是检查6805是否存在索引

    if 6805 in my_data.index.tolist():
        mplt.axhline(y=my_data.loc[6805], color='green', linestyle='dashed')
    

3]检查行数

  • 您可以检查总行数是否大于或等于6805

    if my_data.shape[0] >= 6805 :
        mplt.axhline(y=my_data.loc[6805], color='green', linestyle='dashed')