千家信息网

python中apply函数怎么用

发表于:2025-02-14 作者:千家信息网编辑
千家信息网最后更新 2025年02月14日,本篇内容主要讲解"python中apply函数怎么用",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"python中apply函数怎么用"吧!函数原型:Dat
千家信息网最后更新 2025年02月14日python中apply函数怎么用

本篇内容主要讲解"python中apply函数怎么用",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"python中apply函数怎么用"吧!

函数原型:

DataFrame.apply(func, axis=0, broadcast=False, raw=False, reduce=None, args=(), **kwds)
  • 1.该函数最有用的是第一个参数,这个参数是函数,相当于C/C++的函数指针。

  • 2.这个函数需要自己实现,函数的传入参数根据axis来定,比如axis = 1,就会把一行数据作为Series的数据

  • 结构传入给自己实现的函数中,我们在函数中实现对Series不同属性之间的计算,返回一个结果,则apply函数

  • 会自动遍历每一行DataFrame的数据,最后将所有结果组合成一个Series数据结构

  • 并返回。

  • 3.apply函数常与groupby函数一起使用,如下图所示:

  • 4.举栗子

对指定列进行操作:

data=np.arange(0,16).reshape(4,4)data=pd.DataFrame(data,columns=['0','1','2','3'])def f(x):    return x-1print(data)print(data.ix[:,['1','2']].apply(f))    0   1   2   30   0   1   2   31   4   5   6   72   8   9  10  113  12  13  14  15    1   20   0   11   4   52   8   93  12  13

对行操作:

data=np.arange(0,16).reshape(4,4)data=pd.DataFrame(data,columns=['0','1','2','3'])def f(x):    return x-1print(data)print(data.ix[[0,1],:].apply(f))    0   1   2   30   0   1   2   31   4   5   6   72   8   9  10  113  12  13  14  15   0  1  2  30 -1  0  1  21  3  4  5  6

整体对列操作:

data=np.arange(0,16).reshape(4,4)data=pd.DataFrame(data,columns=['0','1','2','3'])def f(x):    return x.max()print(data)print(data.apply(f))    0   1   2   30   0   1   2   31   4   5   6   72   8   9  10  113  12  13  14  150    121    132    143    15dtype: int64

整体对行操作:

data=np.arange(0,16).reshape(4,4)data=pd.DataFrame(data,columns=['0','1','2','3'])def f(x):    return x.max()print(data)print(data.apply(f,axis=1))    0   1   2   30   0   1   2   31   4   5   6   72   8   9  10  113  12  13  14  150     31     72    113    15dtype: int64

到此,相信大家对"python中apply函数怎么用"有了更深的了解,不妨来实际操作一番吧!这里是网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

0