У меня есть столбец данных, который выглядит следующим образом:
df = pd.DataFrame({'Ex1':['apple','apple1','Peear','peAr','b$nana','Bananas'],
'Ex2': ['Applet','banan','apples','PAIR','banana','apple'],
'Ex3':['Pears', 'Banaa', 'Apple', 'apple1', 'pear', 'abanana]}); df
И затем у меня есть три массива, которые идентифицируют опечатки типов фруктов как канонический тип фруктов:
apple = ['apple1','Applet','apples','Apple']
pear = ['Peear','peAr','PAIR','Pears','p3ar']
banana = ['b$nana','Bananas','banan','Banaa','abanana']
Как я могу перебрать каждую из колонок, чтобы заменить фрукты с ошибками на правильные. То есть окончательный фрейм данных должен выглядеть следующим образом:
Ex1 Ex2 Ex3
0 apple apple pear
1 apple banana banana
2 pear apple apple
3 pear pear apple
4 banana banana pear
5 banana apple banana
Я знаю, что мог бы достичь этого результата с помощью следующего кода:
replacements = {
"apple":'apple1',
"apple":'Applet',
...}
df['Ex1'].replace(replacements, inplace=True)
Но у меня есть список из 1000+ строк, и я не хочу проходить и делать каждую замену в replacements
, потому что это займет много времени.
Любые предложения, чтобы я мог использовать мои apple
, pear
и banana
переменные как есть?