我是Pandas的新手,需要您的帮助。我有一个包含国家和地区的数据集。我已经根据区域对它们进行了排序,但是我只希望能够按区域访问它们。我用
ds2[ds2.Region=='Africa']
但是它没有返回任何东西,而是给了我列的详细信息。请任何人能帮忙吗?谢谢。
答案 0 :(得分:0)
您所在的区域列可能有空白并且大小写不同。
这应该有效:
ds2.loc[ds2['Region'].str.strip().str.lower() == 'Africa']
请注意您也可以
ds2.loc[ds2['Region'].str.contains('Africa',case=False,regex=False)==True]
答案 1 :(得分:0)
这行代码完全正确,但是在您遇到ds2.query('Region==Africa')
的情况下,请尝试使用pandas查询方法。确保条件参数('Africa')
在数据集中与区分大小写的完全相同,或者在数据集中可能不是非洲。无论哪种情况,建议使用查询方法都更灵活,特别是在有多个条件的情况下。 https://pandas.pydata.org/pandas-docs/stable/reference/api/pandas.DataFrame.query.html