Python中文
首页
教程
问答
标签
搜索
登录
注册
panda通过将一个列条目与多个其他列中的条目相匹配来选择行
回答此问题可获得
20
贡献值,回答如果被采纳可获得
50
分。
<p>在python2.7中,我创建了一个pandas数据帧,格式如下:</p> <pre><code>import pandas as pd df = pd.DataFrame({ 'ID' : ['1','2','3'], 'sps1' : ['1001', '1111', '1000'], 'sps2' : ['1001','0001','NaN'], 'sps3' : ['1001','NaN','1000'], 'sps4' : ['1001','1101','0101'] }) </code></pre> <p>因此,它看起来像:</p> ^{pr2}$ <p>每一行包含不同生物序列的数据,该序列具有唯一的ID(1、2、3等)。每个序列存在于4个不同的物种中(sps1-4)。每个序列中4个不同特征的存在(1)或不存在(0)被编码为4位代码。某些物种的序列缺失,因此记录了NaN。在</p> <p>从这个数据框中,我想选择sps1的代码与其他物种的代码不匹配的行。在</p> <p>所以在上面的示例中,我希望丢弃第0行(代码1001对所有SP都相同)和第2行(sps1代码1000与sps3的代码1000匹配),但保留第1行(sps1代码1111是唯一的)。在</p> <p>最后,我希望将这些选定的行放入具有相同结构的新数据帧中。在</p> <p>我不太习惯用熊猫。到目前为止,我设法找到了这样做的方法:</p> <pre><code>matches = df.loc[( (df['sps1'] != df['sps2']) & (df['sps1'] != df['sps3']) )].index df_match = df.iloc[matches] </code></pre> <p>我可以在sps1和spxx的所有组合中继续这种风格,但在我的全面分析中,我将处理12个以上的物种,因此这是一个大量的输入,效率不高。我想一定有更干净的方法吗?在</p>
0 条评论
分类:
Python问答
请先
登录
后评论
默认排序
时间排序
1 个回答
匿名
1天前
擅长:python、mysql、java
<p>你猜对了:</p> <pre><code>df.loc[[df.iloc[i,1:].duplicated().sum() == 0 for i in df.index]] </code></pre> <p>结果:</p> ^{pr2}$
请先
登录
后评论
针对此问题:
更多的回答
关注
89
关注
收藏
1
收藏,
216
浏览
网友 提问于 2天前
相关Python问题
想用靓汤抢夺价值
1 回答
想申请一份符合工作描述的简历吗
9 回答
想画网格,Python
8 回答
想白痴化我的Python战舰
7 回答
想看两列日期,但只上
2 回答
想看看我写的这个脚本读一个Fortran二进制fi吗
4 回答
想知道Django是如何实现ORM查询优化的吗
9 回答
想知道GeoDjango和地图服务吗
5 回答
想知道Image.resize操作在PIL文件中的详细工作方式吗
3 回答
想知道matplotlib pyplot为什么不调整边距
5 回答
想知道matplotlib颜色的颜色代码吗
10 回答
想知道pd.factorize,pd.get_dummies,sklearn.preprocessing.labeencoder和OneHotEncod之间的区别
5 回答
想知道property()在python中的实际用法吗
3 回答
想知道pyodidejs是如何工作的吗?
1 回答
想知道pyparsing==2.0.1的已完成处理依赖关系
4 回答
想知道ScikitLearn中的编码算法吗
3 回答
想知道VTK 5.04和VTK 5.4.2的vtkMassProperties差异吗
4 回答
想知道一个特定字符在一个特定句子中出现的次数吗
6 回答
想知道两个不同子集的重叠中有多少个对象吗
6 回答
想知道为什么is_素数函数的结果不正确吗
10 回答