完整报错如下:pandas.core.indexing.IndexingError: Unalignable boolean Series provided as indexer (index of the boolean Series and of the indexed object do not match).
解决方法以下是两种索引方式,任选其一即可:
解决方法1dataframe[pd.Series([True, True, True], index=dataframe.index)]解决方法2:
dataframe.loc[pd.Series([True, True], index=['a', 'b']).index]问题解析
如下代码会出现这样的报错:
import pandas as pd import numpy as np dataframe = pd.Dataframe(data=np.random.random(size=(3, 5)), index=['a', 'b', 'c'])
报错代码如下:
dataframe[pd.Series([True, True], index=['a', 'b'])]
可以看到原始的dataframe包括3行,但是这里只有两个True,因此报错,正确的方法是:
dataframe[pd.Series([True, True, True], index=['a', 'b', 'c'])] dataframe.loc[pd.Series([True, True], index=['a', 'b']).index]
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)