【发布时间】:2018-08-20 09:21:22
【问题描述】:
我有一个单词列表,我想做 if 语句,下面是我的列表:
list = ['camera','display','price','memory'(will have 200+ words in the list)]
这是我的代码:
def check_it(sentences):
if 'camera' in sentences and 'display' in sentences and 'price' in sentences:
return "Camera/Display/Price"
if 'camera' in sentences and 'display' in sentences:
return "Camera/Display"
...
return "Others"
h.loc[:, 'Category'] = h.Mention.apply(check_it)
这些组合会太多,而且我想让单词单独返回到行。 有谁知道如何制作这个样本并单独返回单词而不是“相机/显示器/价格”?
【问题讨论】:
-
你的例子表达得不好。如果句子同时包含 'camera' 和 'display',那么如果还有 'price' 则不清楚应该发生什么,因为第二个 if 块永远不会被执行(已经从前一个块返回)。
-
可能关键字最多的情况应该首先返回。
-
Category中的类别是否按字母顺序排列?例如。Camera/Price/Display应该返回为Camera/Display/Price?
标签: python pandas combinations matching