提供不可对齐的布尔系列作为索引器

flying_fluid_four

我正在尝试将数据框过滤为:

a= a[~(b['var1'].isin(c['var2']))]

但出现以下错误:

"Unalignable boolean Series provided as "
pandas.core.indexing.IndexingError: Unalignable boolean Series provided as indexer (index of the boolean Series and of the indexed object do not match).

我了解以下声明:

print(~(b['var1'].isin(c['var2'])) [:10])

正在返回布尔屏蔽的序列,这可能是不可接受的。因此,我尝试将loc用作:

a= a.loc[:, ~(b['var1'].isin(c['var2']))]

但是我遇到了同样的错误。我在这里想念什么?任何输入将不胜感激。

谢谢

耶斯列尔

错误表示a用创建和的掩码的isin索引不同,表示的索引的索引不同b

mask = ~(b['var1'].isin(c['var2']))

因此可能的解决方案是将索引更改为a.index,对于不匹配的值添加Falses:

a[mask.reindex(a.index, fill_value=False)]

要么:

a[~(b['var1'].reindex(a.index, fill_value=False).isin(c['var2']))]

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

熊猫:IndexingError:作为索引器提供的不可对齐的布尔系列

修复:作为索引器提供的不可对齐的布尔系列尝试在列之间进行乘法运算

IndexingError:在dropna和过滤后提供了不可对齐的布尔系列键

Python pandas.core.indexing.IndexingError:提供了不可对齐的布尔系列键

将列表传递给熊猫系列作为索引

将pandas系列作为一列添加到多索引的DataFrame填充级别

使用现有的列作为索引

python-“布尔系列键将重新索引以匹配DataFrame索引。从ipykernel导入kernelapp作为应用程序”

返回一个项目系列作为熊猫的元组

在一系列作为地图值的数组中的特定索引的值中查找最大值(和最小值)

PHP-PDO获取结果集,其中列作为索引,列作为值

pandas数据框to_dict两列作为索引,第三列作为值

向接受可变参数的方法提供序列作为参数

大熊猫可以使用列作为索引吗?

使用多列作为索引透视数据框架

熊猫按月汇总,有2列作为索引

不使用索引列作为Pandas DataFrame中的变量

在熊猫数据框中使用多列作为索引

布尔系列键将重新索引以匹配DataFrame索引

迭代器作为布尔语句?

为什么可以将列表作为值的索引却不能将列作为索引呢?

使用元组作为pandas系列中的索引

在布尔熊猫系列中查找true-after-false的索引

将pandas系列作为新列添加到特定数据框行

将列表或系列作为一行附加到熊猫DataFrame吗?

使用Pandas将自定义系列作为新列插入DataFrame中

如何将pandas DataFrame的第一列作为系列?

如何在柱形图上将其他系列作为折线图

将多个系列作为单个列合并到DataFrame中