Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

replacing quotes, commas, apostrophes w/ regex - python/pandas

I have a column with addresses, and sometimes it has these characters I want to remove => ' - " - ,(apostrophe, double quotes, commas)

I would like to replace these characters with space in one shot. I'm using pandas and this is the code I have so far to replace one of them.

test['Address 1'].map(lambda x: x.replace(',', ''))

Is there a way to modify these code so I can replace these characters in one shot? Sorry for being a noob, but I would like to learn more about pandas and regex.

Your help will be appreciated!

like image 653
medev21 Avatar asked Aug 29 '16 20:08

medev21


2 Answers

You can use str.replace:

test['Address 1'] = test['Address 1'].str.replace(r"[\"\',]", '')

Sample:

import pandas as pd

test = pd.DataFrame({'Address 1': ["'aaa",'sa,ss"']})
print (test)
  Address 1
0      'aaa
1    sa,ss"

test['Address 1'] = test['Address 1'].str.replace(r"[\"\',]", '')
print (test)
  Address 1
0       aaa
1      sass
like image 138
jezrael Avatar answered Sep 21 '22 09:09

jezrael


Here's the pandas solution: To apply it to an entire dataframe use, df.replace. Don't forget the \ character for the apostrophe. Example:

import pandas as pd
df = #some dataframe
df.replace('\'','', regex=True, inplace=True) 
like image 42
Brad123 Avatar answered Sep 21 '22 09:09

Brad123