Issue
I have a pandas data frame, let's call it data
. data
has two columns, column a
and column b
. Like this:
a b
0 aaa tts
1 abb tst
2 aba tss
I would like to replace each "a"
in column a
with column b
.Like this:
a b
0 ttsttstts tts
1 tstbb tst
2 tssbtss tss
I tied something like this :
data['a'] = data['a'].apply(lambda x:x.replace("sub-string",data['b']))
but as I excepted, did not work. Could anyone please tell me what to do?
Solution
You need to iterate row-wise on the df (passing axis=1
) so that you can access the individual 'b' column values that you intend to replace all occurrences of 'a' in the first column:
In [51]:
df['a'] = df.apply(lambda x: x['a'].replace('a',x['b']), axis=1)
df
Out[51]:
a b
0 ttsttstts tts
1 tstbb tst
2 tssbtss tss
Answered By - EdChum
0 comments:
Post a Comment
Note: Only a member of this blog may post a comment.