apply,map,applymap总结
Python中apply,map,applymap总结
pandas中DataFrame 数据类型,使用map,apply方法使用较多,做一下总结。参考https://www.cnblogs.com/cymwill/p/7577369.html
总结:
- apply 用在dataframe上,用于对row或者column进行计算;
- applymap 用于dataframe上,是元素级别的操作;
- map (其实是python自带的)用于series上,是元素级别的操作。
df = pd.DataFrame(np.random.randint(0,10,(4, 3)), columns=list('bde'), index=range(4)) df b d e 0 4 9 3 1 3 1 0 2 4 8 0 3 2 9 9
apply:作用在dataframe的一行或一列上,也可以作用在series上
定义一个函数,
f = lambda x: x.max() - x.min()
这个函数可以结合apply作用在DataFrame类型的行或者列上
# 和加上axis = 0 ,默认是作用在列上 df.apply(f) b 2 d 8 e 9 dtype: int64 # axis = 1 ,默认是作用在行上 df.apply(f,axis =1) 0 6 1 3 2 8 3 7 dtype: int64
关于apply 传入多参数
def test(a,b): return a,b df['d'].apply(test,args=('ok',)) # args只能传入(元组) 0 (9, ok) 1 (1, ok) 2 (8, ok) 3 (9, ok) Name: d, dtype: object
applymap: 作用在dataframe的每一个元素上
定义f2函数
f2 = lambda x: x+1 if x%2==0 else x
applymap 会将函数作用在DataFrame每一个元素上
df.applymap(f2) b d e 0 5 9 3 1 3 1 1 2 5 9 1 3 3 9 9
map:作用将函数作用于一个Series的每一个元素
df['b'].map(f2) 0 5 1 3 2 5 3 3 Name: b, dtype: int64
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
漫画:设计模式六大原则(下)
publicinterfaceCarService{ StringgetName(); voiddrive(); Stringcolor(); }publicclassSedanimplementsCarService{ privateString name; privateString color; privateintspeed; publicSedan(String name, String color,intspeed{ this.name = name; this.color = color; this.speed = speed; } @Override publicString getName(){ returnthis.name; } @Override publicvoiddrive(){ System.out.println("普通的小车普通的开"+this.speed); } @Override publicStringcolor(){ returnthis.color; } } publicc...
- 下一篇
Python知识梳理
这是个人学习笔记,非教程,内容会有些混乱 极简教程 数据类型 我们可以使用type()函数类获取对象的类型,Python3中内置数据类型包括:None,int,float,complex,str,list,dict,tuple,set,frozenset,range等,Python2中还有long类型,Python中并没有内置数组类型。 dict,list,set这些是可变类型(用户自定义类型也可变),可以改变类型对象的值;数值和字符串类型则是不可变的。 str与js一样,python中字符串即可用单引号也可用双引号表示 numbersPython3中数值类型有:int和float两种 list字面量表示:[1,1.0,False,'list'] 列表推导式,创建列表的一种简易方法: tuple字面量表示:(1,1.0,False,'tuple') range list、tuple、range均属于序列类型(Sequence Types) dict set/frozenset集合是不包含重复元素的数据集,frozenset是不可变的,set是可变的,可以使用字面量构建一个集合{1,2,...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- CentOS7安装Docker,走上虚拟化容器引擎之路
- CentOS7编译安装Cmake3.16.3,解决mysql等软件编译问题
- CentOS7编译安装Gcc9.2.0,解决mysql等软件编译问题
- Docker使用Oracle官方镜像安装(12C,18C,19C)
- Docker安装Oracle12C,快速搭建Oracle学习环境
- CentOS7设置SWAP分区,小内存服务器的救世主
- SpringBoot2全家桶,快速入门学习开发网站教程
- CentOS6,7,8上安装Nginx,支持https2.0的开启
- CentOS8安装Docker,最新的服务器搭配容器使用
- CentOS关闭SELinux安全模块