Pandas数据分析Pandas进阶在线闯关_头歌实践教学平台

Pandas数据分析进阶

  • [第1关 Pandas 分组聚合](#第1关 Pandas 分组聚合)
  • [第2关 Pandas 创建透视表和交叉表](#第2关 Pandas 创建透视表和交叉表)

第1关 Pandas 分组聚合

任务描述

本关任务:使用 Pandas 加载 drinks.csv 文件中的数据,根据数据信息求每个大洲红酒消耗量的最大值与最小值的差以及啤酒消耗量的和。

编程要求

使用 Pandas 中的 read_csv() 函数读取 step1/drinks.csv 中的数据,数据的列名如下表所示,请根据 continent 分组并求每个大洲红酒消耗量的最大值与最小值的差以及啤酒消耗量的和。在右侧编辑器 Begin-End 内补充代码。

测试说明

平台会对你编写的代码进行测试:

测试输入:无;

预期输出:

开始你的任务吧,祝你成功!

python 复制代码
import 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",header = 0)
    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 创建透视表和交叉表

任务描述

本关任务:使用 Pandas 加载 tip.csv 文件中的数据集,分别用透视表和交叉表统计顾客在每种用餐时间、每个星期下的小费总和情况。

编程要求

使用 Pandas 中的 read_csv 函数加载 step2/tip.csv 文件中的数据集,分别用透视表和交叉表统计顾客在每种用餐时间(time) 、每个星期下(day) 的 小费(tip)总和情况。在右侧编辑器 Begin-End 内补充代码。

数据集列名信息如下表:

测试说明

平台会对你编写的代码进行测试:

测试输入:无;

预期输出:

开始你的任务吧,祝你成功!

python 复制代码
#-*- coding: utf-8 -*-
import pandas as pd

#创建透视表
def create_pivottalbe(data):
    ###### Begin ######
    df = pd.DataFrame(data)
    x = df.pivot_table(index = ['day'],columns = ['time'],values = ['tip'],aggfunc = sum , margins = True)
    return x
    ###### End ######

#创建交叉表
def create_crosstab(data):
    ###### Begin ######
    df = pd.DataFrame(data)  
    y = pd.crosstab(index = df['day'],columns = df['time'],values = df['tip'],aggfunc =sum,margins = True)
    return y
    ###### End ######

def main():
    #读取csv文件数据并赋值给data
    ###### Begin ######
    data = pd.read_csv("step2/tip.csv",header = 0)
    ###### 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()
相关推荐
ATMQuant19 小时前
量化指标解码21:逻辑回归支撑阻力 - 让逻辑回归给关键价位打分
python·机器学习·逻辑回归·量化交易·技术指标
q03718019 小时前
深色 IDE 截图 OCR 老是漏字,我加了一层预处理,顺手把识别结果做成了可搜索历史
python
蜗牛87519 小时前
个人机票监控开源项目:6 个平台、10 条通道的自托管方案
python
秋名山小白20 小时前
Playwright UI 自动化测试实战教程
python·ui
AI源码21 小时前
基于 Python 的汽车市场数据分析与可视化平台
python·数据分析·汽车
会飞锦鲤21 小时前
基于 SVM + HOG 的铸造缺陷检测系统
python·opencv·机器学习·计算机视觉·缺陷检测·图像分类·svm
starrysky8101 天前
zipfile 中文乱码修复:把已知 GBK 旧 ZIP 解压到正确中文目录
python
用户91294046848421 天前
Codex 从零到能交付(09):让 Codex 写有用的测试,而不是只测成功路径
python
2601_967987371 天前
Debian如何配置Python调试工具
python·debian·pdb·调试工具·ipdb
MoRay1 天前
放弃云端 Computer Use,我用 Python 手搓了一个带“物理防呆”的本地 GUI Agent 底座
python·github