Python / Pandas - 具有部分字符串的get_group

时间:2017-11-16 20:37:00

标签: python pandas

我有一个这样的数据框:

name   . profession
Alex   . Data Analyst
Markus . Sales Manager
Carlos . Credit Analyst
Otavio . HR Manager
...

我需要知道这个数据框中有多少人在其职业中拥有字符串“Analyst”。答案应该是2。

我正在尝试使用groupbyget_group,但我找不到将其放入get_group语法的正确方法。

现在我在这里:

df.groupby('profession').get_group(???).agg('count')

有人可以建议什么是正确的语法或建议另一种方法吗?

1 个答案:

答案 0 :(得分:2)

如果您想要标量答案,可以使用以下命令:

df.profession.str.contains('Analyst').sum()

输出:

2

或者作为groupby的数据框:

df.assign(is_analyst = df.profession.str.contains('Analyst'))\
  .groupby('is_analyst')['name']\
  .size()

输出:

is_analyst
False    2
True     2
Name: name, dtype: int64