Ask a Question
Ask Question Login
Corporate Training
  1. Community
  2. Python
  3. Question
Python

re.sub erroring with “Expected string or bytes-like object”

Asked by Akansha Chawla Apr 14, 2021 5.1K views 1 answer
Share

About this question

Question Description:

I have read multiple posts regarding the error “expected string or bytes-like object”, but I still can't figure it out. When I try to loop through my function:

I have read multiple posts regarding this error, but I still can't figure it out. When I try to loop through my function:

def fix_Plan(location):
letters_only = re.sub("[^a-zA-Z]",  # Search for all non-letters
                       " ",      # Replace all non-letters with spaces
                       location) # Column and row to search   
words = letters_only.lower().split()    
stops = set(stopwords.words("english"))     
meaningful_words = [w for w in words if not w in stops]     
return (" ".join(meaningful_words))   
col_Plan = fix_Plan(train["Plan"][0])   
num_responses = train["Plan"].size   
clean_Plan_responses = []
for i in range(0,num_responses):
clean_Plan_responses.append(fix_Plan(train["Plan"][i]))
 
Here is the error:
Traceback (most recent call last):
  File "C:/Users/xxxxx/PycharmProjects/tronc/tronc2.py", line 48, in
clean_Plan_responses.append(fix_Plan(train["Plan"][i]))
  File "C:/Users/xxxxx/PycharmProjects/tronc/tronc2.py", line 22, in fix_Plan
location)  # Column and row to search
  File "C:UsersxxxxxAppDataLocalProgramsPythonPython36libre.py", line 191, in sub
return _compile(pattern, flags).sub(repl, string, count)
TypeError: expected string or bytes-like object

Your answer

1 Answer

More Python discussions

Learn & Explore

Free tutorials and interview questions from industry experts — learn the skill, then get ready to prove it.

Latest Python Blogs

Guides, tips and career advice on Python from JanBask experts.