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万个数据呢