我听说loc支持布尔数组输入而不是标签。如果数组太短,loc假设缺失值为False。但是,当尝试使用语法elections.loc[[True, False, False, True], [True, False, False, True]]时,它返回类似IndexError: Boolean index has wrong length: 4 instead of 23的错误。新版本中是否取消了此功能?我真的很困惑。我真的是一个了解这个问题的人。
loc
elections.loc[[True, False, False, True], [True, False, False, True]]
IndexError: Boolean index has wrong length: 4 instead of 23
mf98qq941#
据我所知,Pandas不允许“短”面具。在版本0.25.3、1.2.5、1.4.4、1.5.3和2.0.2上测试,错误始终为:
IndexError: Boolean index has wrong length: 4 instead of 23 # Or for older versions IndexError: Item wrong length 4 instead of 23.
可重现错误:
import pandas as pd import numpy as np elections = pd.DataFrame(np.random.random((23, 4))) # or (4, 23) elections.loc[[True, False, False, True], [True, False, False, True]]
1条答案
按热度按时间mf98qq941#
据我所知,Pandas不允许“短”面具。
在版本0.25.3、1.2.5、1.4.4、1.5.3和2.0.2上测试,错误始终为:
可重现错误: