2017-09-14 47 views
0

我有很多行的數據幀。我想使用pd.replace替換整個列中的值。熊貓數據框替換正則表達式不起作用

import pandas as pd 
import re 
list = ['MD 15241', 'MD', 'TD', 'TD 15487'] 
a = pd.DataFrame(list) 
b = a.copy() 

b.replace(r'[A-Z]{2}', 'USA', inplace = True) 
b 

輸出

0 
0 MD 15241 
1 MD 
2 TD 
3 TD 15487 

我試圖r'MD '或r'TD',它的工作原理。

+0

您可能要添加標籤'Pandas' – petezurich

回答

1

您在replace方法需要regex=True

b.replace(r'[A-Z]{2}', 'USA', inplace=True, regex=True) 

b 
#0 
#0 USA 15241 
#1 USA 
#2 USA 
#3 USA 15487 
+1

感謝。有用。 –