process.extract()
를 사용하면 문자열의 유사도를 측정할 수 있다. 이를 통해 오타로 의심되는 문자열을 추려낼 수 있다.# fuzzywuzzy의 process 가져오기
from fuzzywuzzy import process
# 오타를 확인할 열의 유니크값을 따로 저장하기
unique_과일 = 데이터프레임['과일'].unique()
# '과일'에 속한 문자열과 특정 키워드의 유사도 측정하기
print(process.extract('apple', unique_과일, limit = len(unique_과일)))
이렇게 측정한 유사도는 각 문자열마다 100 이하의 정수로 나타내어진다.
[('apple', 100), ('applee', 91), ('applle', 83).....]
# 유사도 측정 및 저장
matches = process.extract('사과', 데이터프레임['과일'], limit = len(데이터프레임.과일))
# for문 작성
for match in matches :
# 유사도가 70 이상일 경우
if match[1] >= 70 :
# 존재하는 해당 문자열을 전부 '사과'로 대체
데이터프레임.loc[데이터프레임['과일'] == match[0]] = '사과'