首页 > 解决方案 > Pandas dataframe.loc:“与行轴长度相同的布尔列表”是什么意思?

问题描述

Pandas 文档有这个Boolean list with the same length as the row axis示例,如下所示:

>>> df = pd.DataFrame([[1, 2], [4, 5], [7, 8]],
...      index=['cobra', 'viper', 'sidewinder'],
...      columns=['max_speed', 'shield'])
>>> df
            max_speed  shield
cobra               1       2
viper               4       5
sidewinder          7       8


>>> df.loc[[False, False, True]]
            max_speed  shield
sidewinder          7       8

有人可以解释一下如何df.loc[[False, False, True]]获得显示的结果吗?

谢谢。

标签: pythonpython-3.xpandasdataframe

解决方案


df[[False,False,True]]返回与 相同df.loc[[False, False, True]]

df[[False,False,True]]更直观 & 可以解释为:不返回 first & second (即 first & second False),返回第三行(即 third is True)。

在文档中,请参阅要点:

  • 与被切片的轴长度相同的布尔数组,例如 [True, False, True]。

推荐阅读