【问题标题】:Outliers in Categorical Data?分类数据中的异常值?
【发布时间】:2020-10-29 19:10:21
【问题描述】:

我无法找到在分类数据中查找异常值的解决方案。我的数据由行的组合组成。我想标记某些组合不同的异常值。 在上面指定的问题中,我无法将数据聚类为非异常数据行,异常行由相同的频率组成。 我的数据看起来像这样->

      c1 c2 c3  c4
row1-> A  B  C ,D
row2-> A  B  C  D, 
row3-> A  D  C ,G
row4-> NU D  E  G,
row6-> NU D  E  X  

请提出解决问题的有效逻辑。 我还尝试根据频率分布数据,但我无法分配阈值,因为我无法找到将数据视为异常值的值。提供一种查找阈值的方法也可以提供帮助。

【问题讨论】:

    标签: python data-science data-analysis outliers


    【解决方案1】:

    分类数据没有异常值检测方法。 notion 在这种情况下没有任何意义。你可能会这样想:

    您有 10 个样本,其中 9 位女性和 1 位男性。您可能认为男性是异常值,这只是您样本的组成,而不是异常值。

    要存在异常值,必须对项目之间的距离进行度量。请查看this 了解更多信息。

    请提出解决问题的有效逻辑。我还尝试根据频率分布数据,但我无法分配阈值,因为我无法找到将数据视为异常值的值。提供一种查找阈值的方法也可以提供帮助。

    一个解决方案可以是 value_counts 您的列,这样您就有了每个元素的频率。

    【讨论】:

    • 谢谢。你能建议在这种情况下嵌入词如何工作吗? (我对词嵌入非常陌生,只是想知道它在这种情况下会起作用吗?)
    • 没有。我的意思是词嵌入即将提供词义的密集向量表示,但 A、B、C 并不意味着这么多。您可以 df['c1'].value_counts() 进行解释,但您的问题非常不清楚,我无法用您提供的信息做更多的事情。
    • 我很抱歉不清楚。无论如何我有一个解决我的问题的方法:)。你的回答真的很有帮助。
    猜你喜欢
    • 1970-01-01
    • 2020-02-01
    • 1970-01-01
    • 2021-10-02
    • 2021-01-10
    • 1970-01-01
    • 1970-01-01
    • 2021-10-22
    • 2019-08-19
    相关资源
    最近更新 更多