I am cleaning a column in my data frame
, Sumcription, and am trying to do 3 things:
- Tokenize
- Lemmantize
Remove stop words
import spacy nlp = spacy.load('en_core_web_sm', parser=False, entity=False) df['Tokens'] = df.Sumcription.apply(lambda x: nlp(x)) spacy_stopwords = spacy.lang.en.stop_words.STOP_WORDS spacy_stopwords.add('attach') df['Lema_Token'] = df.Tokens.apply(lambda x: " ".join([token.lemma_ for token in x if token not in spacy_stopwords]))
However, when I print for example:
df.Lema_Token.iloc[8]
The output still has the word attach in it:
attach poster on the wall because it is cool
Why does it not remove the stop word?
I also tried this:
df['Lema_Token_Test'] = df.Tokens.apply(lambda x: [token.lemma_ for token in x if token not in spacy_stopwords])
But the str attach
still appears.