Python 处理数据帧中的缩写和拼写错误的单词

Python 处理数据帧中的缩写和拼写错误的单词,python,pandas,dataframe,Python,Pandas,Dataframe,我有一个数据框,里面有拼写错误的单词和缩写,就像这样 输入: df=pd.DataFrame(['swtch','cola','FBI',', “smsng”、“BCA”、“MIB”],列=[“拼写错误”]) 输出: 拼写错误 0 swtch 一杯可乐 2联邦调查局 3 smsng 公元前4年 5 MIB 我需要纠正拼写错误的单词和abv的注释 我尝试过创建字典,例如: 输入: dicts=pd.DataFrame([‘可口可乐’、‘联邦调查局’, '三星','中亚银行','开关','黑衣人'

我有一个数据框,里面有拼写错误的单词和缩写,就像这样

输入:
df=pd.DataFrame(['swtch','cola','FBI',',
“smsng”、“BCA”、“MIB”],列=[“拼写错误”])
输出:
拼写错误
0 swtch
一杯可乐
2联邦调查局
3 smsng
公元前4年
5 MIB
我需要纠正拼写错误的单词和abv的注释

我尝试过创建字典,例如:

输入:
dicts=pd.DataFrame([‘可口可乐’、‘联邦调查局’,
'三星','中亚银行','开关','黑衣人'],列=['words'])
输出:
话
0可口可乐
1联邦调查局
2三星
3中亚银行
4开关
5个黑衣人
然后应用这个代码

x=[next(iter(x),np.nan)表示映射中的x(lambda x:difflib.get_close_matches(x,dicts.words),df.拼写错误)]
df['fix']=x
打印(df)
输出结果是我已成功更正拼写错误,但未更正缩写

misspelled        fix
0      swtch     switch
1       cola  coca cola
2        FBI        NaN
3      smsng    samsung
4        BCA        NaN
5        MIB        NaN

请提供帮助。

如何采用双管齐下的方法,首先纠正拼写错误,然后扩展缩写:

df = pd.DataFrame(['swtch', 'cola', 'FBI', 'smsng', 'BCA', 'MIB'], columns=['misspelled'])
abbreviations = {
    'FBI': 'Federal Bureau of Investigation',
    'BCA': 'Bank Central Asia',
    'MIB': 'Men In Black',
    'cola': 'Coca Cola'
}

spell = SpellChecker()
df['fixed'] = df['misspelled'].apply(spell.correction).replace(abbreviations)
结果:

  misspelled                            fixed
0      swtch                           switch
1       cola                        Coca Cola
2        FBI  Federal Bureau of Investigation
3      smsng                            among
4        BCA                Bank Central Asia
5        MIB                     Men In Black

我使用,但你可以使用任何拼写检查库。它将
smsng
更正为
中的
,但这是对自动拼写更正的警告。不同的库可能会给出不同的结果

您的数据中有多少缩写?@Erfan如果我们说有1000万行,其中20%是Abbvrevisions,那么大约是20万个数据呢