微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

是否有任何解决方案可以将原始数据转换为一些分类数据集

如何解决是否有任何解决方案可以将原始数据转换为一些分类数据集

我有一个数据集,其中包含 hindihindi、hendi、English、Englsh、inglish、inglsh...等值。我希望这个数据集分成不同的数据集,这些数据集将具有类似的值。例如在这种情况下有两个数据集;第一个是具有印地语、印地语、hendi 的值,另一个包含英语、英语、英语、inglsh。

解决方法

您可以使用difflib.get_close_matches

输入:

>>> s = pd.Series(['Hindi','hindi','hendi','English','Englsh','inglish','inglsh'])
>>> s
0   Hindi
1   hindi
2   hendi
3   English
4   Englsh
5   inglish
6   inglsh

处理:

import difflib
s.apply(lambda s: difflib.get_close_matches(s,possibilities=['english','hindi'])[0])

输出:

0   hindi
1   hindi
2   hindi
3   english
4   english
5   english
6   english
,

假设唯一值很小且已知,您可以尝试对具有所有唯一值的单词进行评分,并将该单词分配给唯一值得分最高的数据集。

您可以在此处尝试多种评分机制,例如 Levenshtein 距离。

例如:

dataset = ['hindi','hundi','english','englesh']
unique_values = ['hindi','english']

segregated_dataset = {'hindi': [],'english': []}

for val in dataset:
    max_score = 0
    for unique_val in unique_values:
        score = scoring_function(val,unique_val) # implement the scoring function of your choice
        if score > max_score:
            field = unique_val
            max_score = score
            
    segregated_dataset[field].append(val)
,

由于不知道正确的必填单词集,因此您的问题的一个可能答案可能是 this question

最好使用 numpy.char.lower(list_of_word)

将您的单词转换为小写

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其他元素将获得点击?
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。)
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbcDriver发生异常。为什么?
这是用Java进行XML解析的最佳库。
Java的PriorityQueue的内置迭代器不会以任何特定顺序遍历数据结构。为什么?
如何在Java中聆听按键时移动图像。
Java“Program to an interface”。这是什么意思?