【发布时间】:2021-03-20 09:39:19
【问题描述】:
我正在努力更好地理解 Python 以及我收到错误的原因。
我有一个包含国家名称的数据框,我想过滤数据集以仅显示那些没有重复的数据。我输入了:
df[df['Country Name'].value_counts() == 1]
但是,我得到一个错误
Unalignable boolean Series provided as indexer (index of the boolean Series and of the indexed object do not match
[df['Country Name'].value_counts() == 1] 似乎创建了一个列表,其中还显示了国家名称和布尔值,而不是我所期望的简单的布尔值。
另外,我尝试仅在一个国家/地区进行过滤,即df[df['Country Name'] == 'United States'],这非常有效。
我只是想了解为什么在一种情况下它有效,而在另一种情况下却无效。我确实注意到后者有一个从 0 开始的索引,所以也许这就是原因。我只是不明白为什么我在前面的示例中没有收到相同的索引。
有人可以帮忙解释一下吗?
【问题讨论】:
-
嘿,查看how to ask a good question page。有了一个可重复的例子,更多的人会愿意提供帮助。帮助我们为您提供帮助。
-
请向我们展示一小部分数据框和输入/输出示例
标签: python pandas dataframe filter subset