pandas——apply,transform统计使用

apply()的使用

格式:DataFrame.apply(np.sum,axis=0), 表示每一列的和,也可以理解为按照行的方向加和,从结果上看,字符串是串联起来,也可以使用其他np的函数,进行计算

import pandas as pd
import numpy as np 

def doub_out(data):
   return(data.sum()*2)

df=pd.read_csv('my_csv.csv',header=0,\
   encoding='gbk',dtype={'年龄':float})
print(df)
names=["id","姓名","年龄","身高","体重"]
print(df[names].apply(np.sum,axis=0))

在这里插入图片描述

transform()的使用,但不能聚合

功能相比于agg()和apply()较差

import pandas as pd
import numpy as np 

def doub_out(data):
	return(data.sum()*2)

df=pd.read_csv('my_csv.csv',header=0,\
	encoding='gbk',dtype={'年龄':float})
print(df)
names=["id","姓名","年龄","身高","体重"]
#使用匿名函数,将数据都乘以2
print(df[names].transform(lambda x:x*2))
'''
   id  姓名    年龄 性别   地址   身高  体重
0   1  李兰  20.0  男   朝国  180  40
1   1  狗子  35.0  男  加拿大  175  50
2   1  黑蛋  20.0  女   韩国  160  60
3   2  李兰  20.0  男   朝鲜  170  35
4   2  王贵  16.0  男   迪拜  170  70
5   2  小红  16.0  女   芬兰  175  50
   id    姓名    年龄   身高   体重
0   2  李兰李兰  40.0  360   80
1   2  狗子狗子  70.0  350  100
2   2  黑蛋黑蛋  40.0  320  120
3   4  李兰李兰  40.0  340   70
4   4  王贵王贵  32.0  340  140
5   4  小红小红  32.0  350  100
'''
发布了70 篇原创文章 · 获赞 1 · 访问量 2425

猜你喜欢

转载自blog.csdn.net/weixin_43794311/article/details/104837827