【问题标题】:How to check if a string contains a word when applying association_rules?应用关联规则时如何检查字符串是否包含单词?
【发布时间】:2019-07-24 12:40:15
【问题描述】:

我正在应用关联规则并仅选择具有以下参数的规则,但是我只想选择没有这些项目集“AL”、“DIAB”的规则,无论它们的值为“0”“1”是什么,“y”或“n”。怎么说:当结果包含“AL”、“DIAB”时,不要选择规则。这是我的代码,但它只精确到确切的字符串,而不是子字符串

Selected_rules = rules[ (rules['antecedent_len'] <= 3) &
           (rules['confidence'] > 0.6) &
           (rules['lift'] > 1) & ( rules['consequents'] != {'AL = 1'} ) & (rules['consequents'] != {'DIAB = n'})  ]

例如,我不希望选择此规则,因为它同时具有“AL”和“DIAB”

frozenset(['SEX = F', 'Age = 70'])              frozenset(['AL = 0', 'DIAB = y'])                    0.25                 0.25                 0.25      1         4            0.1875         inf                   2

【问题讨论】:

    标签: python string pandas data-mining apriori


    【解决方案1】:

    你为什么不使用in运算符而不是相等比较?

    'AL = 1' in rule['consequents']
    

    当然,首先只生成感兴趣的规则而不是事后过滤它们更有意义,并且使用比字符串集更有效的数据结构...

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-01-25
      • 1970-01-01
      • 2023-04-01
      • 2011-05-20
      • 1970-01-01
      相关资源
      最近更新 更多