2016-04-03 126 views
3

應用函數列字符串我想刪除該字符串的所有實例從山坳「A」關口「B」,像這樣:大熊貓據幀基於其他列的值

col A     col B col C 
1999 toyota camry  camry 1999 toyota 
2003 nissan pulsar pulsar 20013 nissan 

我會怎麼做這使用熊貓?如果這是一個固定值(不依賴於另一列),我會用:

df['col C'] = df['col A'].str.replace('value-to-replace','') 

回答

2

給出一個DataFrame的:

df = pd.DataFrame(
    { 
     'A': ['1999 toyota camry', '2003 nissan pulsar'], 
     'B': ['camry', 'pulsar'] 
    } 
) 

可以df.apply在行軸並進行更換:

df['C'] = df.apply(lambda L: L.A.replace(L.B, ''), axis=1) 

這會給你:

    A  B    C 
0 1999 toyota camry camry 1999 toyota 
1 2003 nissan pulsar pulsar 2003 nissan 
0

假設你有一個數據幀:

df 

       col A col B 
0 1999 toyota camry camry 
1 2003 nissan pulsar pulsar 

那麼你可以進行如下操作:

df['col C'] = [el[0].replace(el[1],'') for el in zip(df['col A'],df['col B'])] 
df 

       col A col B   col C 
0 1999 toyota camry camry 1999 toyota 
1 2003 nissan pulsar pulsar 2003 nissan