apply函数可以对DataFrame对象进行操作,既可以作用于一行或者一列的元素,也可以作用于单个元素
import numpy as np
import pandas as pd
data=np.arange(0,16).reshape(4,4)
data=pd.DataFrame(data,columns=['a','b','c','d'])
def f(x):
return x-1
print(data)
a b c d
0 0 1 2 3
1 4 5 6 7
2 8 9 10 11
3 12 13 14 15
1、对第一列数据操作
data['a']=data['a'].apply(f)
print(data)
a b c d
0 -1 1 2 3
1 3 5 6 7
2 7 9 10 11
3 11 13 14 15
2、对第0行数据操作
data.loc[0]=data.loc[0].apply(f)
print(data)
a b c d
0 -2 0 1 2
1 3 5 6 7
2 7 9 10 11
3 11 13 14 15
3.对列元素操作
data.loc[0,['a','b']]
a -2
b 0
Name: 0, dtype: int64
data.loc[0,['a','b']]=data.loc[0,['a','b']].apply(f)
data.loc[0,['a','b']]
a -3
b -1
Name: 0, dtype: int64
data.loc[0]
a -3
b -1
c 1
d 2
Name: 0, dtype: int64
4.对行元素操作
data.loc[0]=data.loc[0].apply(f)
data.loc[0]
a -4
b -2
c 0
d 1
Name: 0, dtype: int64