python-2.7 - 根据列中的 True 值过滤行 - python pandas dataframe

标签 python-2.7 dataframe pandas filtering

我正在使用 pandas 数据框。我有兴趣根据应用于现有数据列的条件获取新的数据框。这是数据框:

users_df
Out[30]: 
<class 'pandas.core.frame.DataFrame'>
Index: 3595 entries,
Data columns (total 9 columns):
screen_name        3595  non-null values

User_Desc          3595  non-null values

lang               3595  non-null values
followers_count    3579  non-null values
friends_count      3580  non-null values
listed_count       2665  non-null values
statuses_count     3595  non-null values
stem_key_flag      3595  non-null values
stem_keys          3595  non-null values
dtypes: bool(1), float64(3), int64(1), object(4)

我正在做的是

en_users_df = users_df[users_df['stem_key_flag']==True]

但我得到的答案与顶部代码块完全相同。这意味着它不过滤任何东西。我是否在做一些在早期版本中兼容但现在不兼容的事情?如果不是,我犯了什么错误?

我还对另一列(int 数据类型)尝试了类似的方法,效果很好。

fol_cnt_users_df = users_df[users_df['followers_count'] >1000]

In [35]: fol_cnt_users_df
Out[35]: 
<class 'pandas.core.frame.DataFrame'>
Index: 724 entries, 2013-06-20, 12:13:46 to 2013-06-19, 18:26:48
Data columns (total 9 columns):
screen_name        724  non-null values
User_Desc          724  non-null values
lang               724  non-null values
followers_count    724  non-null values
friends_count      722  non-null values
listed_count       714  non-null values
statuses_count     724  non-null values
stem_key_flag      724  non-null values
stem_keys          724  non-null values
dtypes: bool(1), float64(3), int64(1), object(4)

感谢您提前提供的帮助。

最佳答案

您的问题可能是版本问题(我假设您使用的是 0.100.11)。我已经测试了您的代码,如果 stem_key_flag 列包含任何 False 值,那么它应该返回不同的数据帧。然而,由于该帖子变得相当流行,为了 future 的访问者,我想声明您的过滤行(如下所示)是正确的:

en_users_df = users_df[users_df['stem_key_flag']==True]

尽管如此,您将使用更简单的代码行获得相同的结果,例如

en_users_df = users_df[users_df.stem_key_flag]

关于python-2.7 - 根据列中的 True 值过滤行 - python pandas dataframe,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17432814/

相关文章:

linux - 使用 Python 脚本修改文件名

python - pandas:查找/选择列中包含 nan 列表的记录

r - 删除带有多个零的列

python - tqdm 可以与数据库读取一起使用吗?

python - 某些系统上pywinauto引起的Py2Exe错误: "AttributeError: ' module' object has no attribute 'CUIAutomation"

linux - 通过python进行glob函数后的文件编辑

python - Pandas dataframe If else 逻辑 AND 涉及两列

python-3.x - ValueError : Buffer dtype mismatch, 预期 'Python object' 但得到 'double'

pandas - 如何根据pandas数据框中的某些条件计算比率公式

python - type(4) == type(int) 在 Python 中是 False 吗?