第1关:Pandas分组聚合
import pandas as pd
import numpy as np
# 返回最大值与最小值的和
def sub(df):
########## Begin #########
return ()-()
########## End #########
# 得到目标DataFrame
def main():
########## Begin #########
df = pd.read_csv("step1/")
df1 = ('continent').agg(sub).loc[:,"wine_servings"]
df2 = ('continent').sum().loc[:,"beer_servings"]
result = ([df1,df2],axis=1)
########## End #########
return result
第2关:Pandas创建透视表和交叉表
#-*- coding: utf-8 -*-
import pandas as pd
#创建透视表
def create_pivottalbe(data):
########## Begin ##########
return data.pivot_table(values=["tip"], index="day", columns="time",aggfunc=sum, margins=True)
########## End ##########
#创建交叉表
def create_crosstab(data):
########## Begin ##########
return (index=data["day"], columns=data["time"], values=data["tip"], aggfunc=sum, margins=True)
########## End ##########
def main():
#读取csv文件数据并赋值给data
########## Begin ##########
data = pd.read_csv("step2/")
########## End ##########
piv_result = create_pivottalbe(data)
cro_result = create_crosstab(data)
print("透视表:\n{}".format(piv_result))
print("交叉表:\n{}".format(cro_result))