Это мой код для чтения текста из файла CSV и преобразования всех слов в его столбце в форму единственного числа из множественного числа:
import pandas as pd
from textblob import TextBlob as tb
data = pd.read_csv(r'path\to\data.csv')
for i in range(len(data)):
blob = tb(data['word'][i])
singular = blob.words.singularize() # This makes singular a list
data['word'][i] = ''.join(singular) # Converting the list back to a string
Но этот код работает уже несколько минут (и, возможно, будет работать часами, если я его не остановлю?)! Почему это? Когда я проверял несколько слов по отдельности, преобразование происходит мгновенно - вообще не занимает времени. В файле всего 1060 строк (слов для преобразования).
РЕДАКТИРОВАТЬ: Он закончил работать примерно через 10-12 минут.
Вот некоторые примеры данных:
Вход:
word
development
investment
funds
slow
company
commit
pay
claim
finances
customers
claimed
insurance
comment
rapid
bureaucratic
affairs
reports
policyholders
detailed
Выход:
word
development
investment
fund
slow
company
commit
pay
claim
finance
customer
claimed
insurance
comment
rapid
bureaucratic
affair
report
policyholder
detailed
.words
— довольно сложная операция;.singularize
может быть самой быстрой вещью в вашем коде. - person Amadan   schedule 10.07.2018data['word'][I]
и, вероятно, получаете предупреждение о том, что вы меняете копию, а не свой df ? - person rafaelc   schedule 10.07.2018