2017-10-16 79 views
0

计数为每个类别列内容,有一组类别精确字符串匹配str.count(),熊猫蟒

  1. 男 - 猫,
  2. 女 - 猫,
  3. 男 - 猫-female

随着df.temp.str.count(i),它显示男 - 猫算作'2',其当在数据搜索,这只是'1',错误地包括第三类的子串。

任何帮助将不胜感激。

+1

我想你应该发布一些数据,有你想要什么更好的描述。 –

回答

2

你需要使用正则表达式从here

df['count'] = df.temp.str.count(r'(?<!\S)Male-Cat(?!\S)') 
print (df) 

              temp count 
0 Male-Cat Female-Cat Male-Cat-Female Male-Cat  2 
1        Male-Cat-Female  0 
2          Male-Cat  1 
3    Male-Cat Male-Cat Male-Cat-Female  2 
4     Male-Cat Male-Cat Male-Cat  3