I have read the docs of DataFrame.apply
DataFrame.apply(func, axis=0, broadcast=False, raw=False, reduce=None, args=(), **kwds)¶ Applies function along
The answer is,
df['A'] = df['A'].map(addOne)
and maybe you would be better to know about the difference of map
, applymap
, apply
.
but if you insist to use apply
, you could try like below.
def addOne(v):
v['A'] += 1
return v
df.apply(addOne, axis=1)
One simple way would be:
df['A'] = df['A'].apply(lambda x: x+1)
you can use .apply() with lambda function to solve this kind of problems.
Consider, your dataframe is something like this,
A | B | C
----------
1 | 4 | 7
2 | 5 | 8
3 | 6 | 9
The function which you want to apply:
def addOne(v):
v += 1
return v
So if you write your code like this,
df['A'] = df.apply(lambda x: addOne(x.A), axis=1)
You will get:
A | B | C
----------
2 | 4 | 7
3 | 5 | 8
4 | 6 | 9