检查 pandas 数据帧索引中是否存在值

新手上路,请多包涵

我确信有一种明显的方法可以做到这一点,但现在想不出任何巧妙的方法。

基本上我不想引发异常 TrueFalse 看看 pandas 中是否存在一个值 df 索引。

 import pandas as pd
df = pd.DataFrame({'test':[1,2,3,4]}, index=['a','b','c','d'])
df.loc['g']  # (should give False)

我现在的工作如下

sum(df.index == 'g')

原文由 Abhi 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 624
2 个回答

这应该可以解决问题

'g' in df.index

原文由 Guillaume Jacquenot 发布,翻译遵循 CC BY-SA 3.0 许可协议

多索引的工作方式与单索引略有不同。以下是多索引数据框的一些方法。

 df = pd.DataFrame({'col1': ['a', 'b','c', 'd'], 'col2': ['X','X','Y', 'Y'], 'col3': [1, 2, 3, 4]}, columns=['col1', 'col2', 'col3'])
df = df.set_index(['col1', 'col2'])

in df.index 仅在检查单个索引值时适用于第一级。

 'a' in df.index     # True
'X' in df.index     # False

检查 df.index.levels 其他级别。

 'a' in df.index.levels[0] # True
'X' in df.index.levels[1] # True

签入 df.index 以获取索引组合元组。

 ('a', 'X') in df.index  # True
('a', 'Y') in df.index  # False

原文由 broccoli2000 发布,翻译遵循 CC BY-SA 3.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题
logo
Stack Overflow 翻译
子站问答
访问
宣传栏