【问题标题】:Data Science - Model Recommendation数据科学 - 模型推荐
【发布时间】:2019-06-27 06:13:45
【问题描述】:

谁能帮我推荐一种从数据集中检测规则破坏者的策略。

例如:

如果我有一个包含 4 列的数据集 - [CustomerName,CardType,BankName,Country]

因此数据集规则:每个客户只能在一个国家/地区拥有一张来自一家银行的卡。

理想 数据集

**CustomerName - CardType - BankName - Country**

1)        Tony - VISA - CITI - USA

如何检测规则破坏者?

**CustomerName - CardType - BankName - Country**

1)        Tony - VISA - CITI - USA

2)        Anthony - VISA - BOFA - USA

3)        Anthony - MC - BOFA - USA

4)        Anthony - VISA - CITI - USA

5)        Anthony - MC - BOFA - USA

6)        Jess - VISA - AMEX - USA

7)        Jess - VISA - BOFA - USA

8)        Jess - VISA - AMEX - USA

检测规则破坏者所需的输出,即一个客户拥有多个 CardType 或一个国家/地区的银行,考虑到 CustomerName 列作为主键和第一个记录的值(Cardtype、Bank、Country ) 的特定 CustomerName 为 True。

示例输出:

**CustomerName - CardType - BankName - Country**


3)        Anthony - MC - BOFA - USA

4)        Anthony - VISA - CITI - USA

5)        Anthony - MC - BOFA - USA

7)        Jess - VISA - BOFA - USA

提前致谢,

注意:我使用 pandas 进行了分析,方法是将主键与单个列分组,即将 CustomerName 和任何其他列分组以获得计数大于 1 的规则破坏者。 但是有什么方法可以检测这些规则破坏者而不是单独分析它们?

我有 18 个不同的列要检测,所以用模型/算法推荐/启发我真的很有帮助。

【问题讨论】:

    标签: python pandas machine-learning data-science anomaly-detection


    【解决方案1】:

    我猜你需要df.drop_duplicates(subset=['column_names',..]) 检查docs。这可能会对您有所帮助。

    【讨论】:

    • 如果我们使用 drop_duplicates 那么我们也会得到有效的记录。
    【解决方案2】:

    我不确定这是否会对您有所帮助。但是你可以使用任何全局字典来为每一行存储一个值吗?

    例如,您有这条规则“所以作为数据集规则:每个客户应该只有一张来自一个国家/地区的一家银行的卡”,并考虑这一行“托尼 - 签证 - 花旗 - 美国”。通过连接规则所需行的所有列值来创建字符串“TonyCITIUSA”。

    s = "TonyCITIUSA" globalDict = {}

    现在检查字符串是否存在于全局字典中,如果存在则意味着如果字典中不存在字符串,则该行是规则破坏者。然后将字符串添加到字典中以供将来使用。

    if s in globalDict: //Rule breaker found else: globalDict.add(s)

    如果可行,请告诉我!

    【讨论】:

    • 我不认为这会有所帮助,因为如果我们连接所有字符串值“TonyBOFAUSA”将被视为新值并将存储在字典中,但这是一个规则破坏者,因为 TONY 不能两个帐户作为数据集规则。感谢您的回复。
    • 哦,我可能以错误的方式理解了这个问题。如果我得到一个,将使用任何其他解决方案进行更新。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-06-03
    • 1970-01-01
    • 2020-02-12
    • 2023-02-20
    • 2012-07-13
    • 1970-01-01
    • 2017-08-08
    相关资源
    最近更新 更多