python - 将元素作为列表切片数据框
问题描述
我的数据框将列表作为元素,我希望有更有效的方法来检查某些条件。
我的数据框看起来像这样
col_a col_b
0 100 [1, 2, 3]
1 200 [2, 1]
2 300 [3]
我只想获取 col_b 中为 1 的那些行。
我尝试过天真的方式 temp_list=list()
for i in range(len(df1.index)):
if 1 in df1.iloc[i,1]:
temp_list.append(df1.iloc[i,0])
对于像这样的大数据框,这需要很多时间。我怎样才能使搜索更有效地搜索这样的数据框?
解决方案
df[df.col_b.apply(lambda x: 1 in x)]
结果是:
col_a col_b
0 100 [1, 2, 3]
1 200 [2, 1]
推荐阅读
- python - 如何用python将单词与非单词完全分开?希腊语和希伯来语
- python - 在 python 中显示来自服务器的图像时面临问题
- swift - 室内快速高度不准确
- javascript - Echo JS onclick填充功能AJAX不起作用
- log4j - 在单个 WebSphere Application Server 8.5 Base 实例上配置多个 log4j.xml
- javascript - 如何使用 .post 和 .getJSON 方法一起使用 jQuery 将我的 JSON 数据输出到 html 表中?
- ios - 无法将 uilabel 的字体大小调整为其高度
- r - R - 基于保留行的多列删除重复值
- javascript - 如何增加 React Prop
- dynamics-crm - 导航到设置页面