首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何根据列组上的多(其他列)-condition选择数据行?

如何根据列组上的多(其他列)-condition选择数据行?
EN

Stack Overflow用户
提问于 2016-04-13 17:28:46
回答 1查看 1.3K关注 0票数 7

将下列数据复制到剪贴板:

代码语言:javascript
复制
  textId   score              textInfo
0  name1     1.0            text_stuff
1  name1     2.0  different_text_stuff
2  name1     2.0            text_stuff
3  name2     1.0  different_text_stuff
4  name2     1.3  different_text_stuff
5  name2     2.0  still_different_text
6  name2     1.0              yoko ono
7  name2     3.0     I lika da Gweneth
8  name3     1.0     Always a tradeoff
9  name3     3.0                What?!

现在用

代码语言:javascript
复制
import pandas as pd
df=pd.read_clipboard(sep='\s\s+')

把它加载到你的环境中。如果该score组至少包含一个等于1.0、2.0和3.0的score,那么如何分割这个数据以使返回特定textId的所有行?在这里,所需操作的结果将排除textId行name1,因为它的score组缺少一个3.0,而排除name3,因为它的score组缺少一个2.0:

代码语言:javascript
复制
  textId   score              textInfo
0  name2     1.0  different_text_stuff
1  name2     1.3  different_text_stuff
2  name2     2.0  still_different_text
3  name2     1.0              yoko ono
4  name2     3.0     I lika da Gweneth

尝试

  1. df[df.textId == "textIdRowName" & df.score == 1.0 & df.score == 2.0 & & df.score == 3.0]是不正确的,因为条件不是对textId组起作用,而是只对单个行起作用。如果可以重写它来与textId组匹配,那么它可以放在一个for循环中,并输入惟一的textIdRowName。这样的函数将在一个系列(比如textIdThatMatchScore123)中收集textId的名称,然后可以用来分割原始的df,比如df[df.textId.isin(textIdThatMatchScore123)]
  2. groupby考试中失败。
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-04-13 17:41:15

这里有一个解决方案-- groupby textId,然后只保留那些得分的唯一值是[1.0, 2.0, 3.0]的超集(>=)的组。

代码语言:javascript
复制
In [58]: df.groupby('textId').filter(lambda x: set(x['score']) >= set([1.,2.,3.]))
Out[58]: 
  textId  score              textInfo
3  name2    1.0  different_text_stuff
4  name2    1.3  different_text_stuff
5  name2    2.0  still_different_text
6  name2    1.0              yoko ono
7  name2    3.0     I lika da Gweneth
票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/36605535

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档