第1关:Pandas分组聚合
复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19import pandas as pd import numpy as np #返回最大值与最小值的差 def sub(df): ######## Begin ####### return df.max() - df.min() ######## End ####### def main(): ######## Begin ####### data = pd.read_csv("step1/drinks.csv") df = pd.DataFrame(data) mapping = {"wine_servings":sub,"beer_servings":np.sum} print(df.groupby("continent").agg(mapping)) ######## End ####### if __name__ == '__main__': main()
第2关:Pandas创建透视表和交叉表
复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27#-*- coding: utf-8 -*- import pandas as pd #创建透视表 def create_pivottalbe(data): ###### Begin ###### return data.pivot_table(index=["day"],values=["tip"],columns=["time"],margins=True,aggfunc=sum) ###### End ###### #创建交叉表 def create_crosstab(data): ###### Begin ###### return pd.crosstab(index=[data.day],columns=[data.time],values=data.tip,aggfunc=sum ,margins=True) ###### End ###### def main(): #读取csv文件数据并赋值给data ###### Begin ###### data = pd.read_csv("step2/tip.csv") ###### End ###### piv_result = create_pivottalbe(data) cro_result = create_crosstab(data) print("透视表:n{}".format(piv_result)) print("交叉表:n{}".format(cro_result)) if __name__ == '__main__': main()
最后
以上就是跳跃果汁最近收集整理的关于【头歌】Pandas进阶的全部内容,更多相关【头歌】Pandas进阶内容请搜索靠谱客的其他文章。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复