Python中文
首页
教程
问答
标签
搜索
登录
注册
仅当列列表包含来自其他lis的值时才筛选行
回答此问题可获得
20
贡献值,回答如果被采纳可获得
50
分。
<p>我有一个数据框,其中一列是一个列表:</p> <pre><code>import pandas as pd data = [{'colA': 'ID1', 'colB': ['A', 'B', 'C']}, {'colA': 'ID2', 'colB': ['A']}, {'colA': 'ID3', 'colB': ['B']}, {'colA': 'ID4', 'colB': ['A', 'B']}, {'colA': 'ID5', 'colB': ['C', 'D']}] df = pd.DataFrame(data) df colA colB 0 ID1 [A, B, C] 1 ID2 [A] 2 ID3 [B] 3 ID4 [A, B] 4 ID5 [C, D] </code></pre> <p>我想筛选行,以便只选择那些只包含另一个列表中的值的行。但是,不应选择包含其他列表中不存在的任何值的任何行。你知道吗</p> <pre><code>valid_list = ['A', 'B'] </code></pre> <p>预期结果</p> <pre><code> colA colB 0 ID1 [A, B, C] #not selected because it contains C 1 ID2 [A] #Valid 2 ID3 [B] #Valid 3 ID4 [A, B] #Valid 4 ID5 [C, D] #Not valid - Either values not present in valid list </code></pre> <p>最终数据帧:</p> <pre><code> colA colB 0 ID2 [A] 1 ID3 [B] 2 ID4 [A, B] </code></pre>
0 条评论
分类:
Python问答
请先
登录
后评论
默认排序
时间排序
1 个回答
匿名
1天前
擅长:python、mysql、java
<p>您还可以应用函数来获取遮罩:</p> <pre><code>df = df[df.colB.apply(lambda lst: all(x in valid_list for x in lst))] </code></pre> <hr/> <pre><code>print(df) colA colB 1 ID2 [A] 2 ID3 [B] 3 ID4 [A, B] </code></pre>
请先
登录
后评论
针对此问题:
更多的回答
关注
89
关注
收藏
1
收藏,
216
浏览
网友 提问于 2天前
相关Python问题
尝试将单元格与pythondocx合并
1 回答
尝试将卡的5个值传递给函数,但不起作用
7 回答
尝试将卷绑定到docker容器
3 回答
尝试将原始queryset转换为queryset时出错
6 回答
尝试将原始输入与函数一起使用
5 回答
尝试将参数传递给函数时,可以通过python中的“@app.route”
4 回答
尝试将变量mid脚本返回到我的模板
8 回答
尝试将变量从一个函数调用到另一个函数
4 回答
尝试将变量传递给一个名称与参数不同的函数是否更好?
1 回答
尝试将变量传递给函数内部的函数。Python
2 回答
尝试将变量作为参数传递
4 回答
尝试将变量作为命令
1 回答
尝试将变量旁边的数据从文本复制到csv时,python获取错误:
6 回答
尝试将变量输入到sql数据库中已创建的行中
4 回答
尝试将只有两个或更多重复元音的单词打印到文本文件中
3 回答
尝试将后缀(字符串)添加到列表中每个WebElement的末尾
9 回答
尝试将命令行输出保存到fi时出错
3 回答
尝试将唯一ASCII文件导入数据帧时出现分析错误
4 回答
尝试将回归程序从stata转换为python
3 回答
尝试将图像上的点投影到二维平面时打开CV通道
4 回答