• Python每日一练(牛客数据分析篇新题库)——第36天:分组聚合


    1. 牛客用户刷题量的方差与提交次数的标准差

    描述: 现有一个Nowcoder.csv文件,它记录了牛客网的部分用户数据,包含如下字段(字段与字段之间以逗号间隔):
    Nowcoder_ID:用户ID
    Level:等级
    Achievement_value:成就值
    Num_of_exercise:刷题量
    Graduate_year:毕业年份
    Language:常用语言
    Continuous_check_in_days:最近连续签到天数
    Number_of_submissions:提交代码次数
    Last_submission_time:最后一次提交题目日期
    假如牛牛正在统计用户的刷题情况,需要知道用户刷题量的方差以及提交代码次数的标准差,你能够帮助他吗?

    在这里插入图片描述

    实现代码:

    import pandas as pd
     
    Nowcoder = pd.read_csv('Nowcoder.csv', sep=',')
     
    # var
    print(Nowcoder['Num_of_exercise'].var().round(2))
    # std
    print(Nowcoder['Number_of_submissions'].std().round(2))
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8

    运行结果:

    在这里插入图片描述



    2. 大佬用户成就值比例

    描述: 现有一个Nowcoder.csv文件,它记录了牛客网的部分用户数据,包含如下字段(字段与字段之间以逗号间隔):
    Nowcoder_ID:用户ID
    Level:等级
    Achievement_value:成就值
    Num_of_exercise:刷题量
    Graduate_year:毕业年份
    Language:常用语言
    Continuous_check_in_days:最近连续签到天数
    Number_of_submissions:提交代码次数
    Last_submission_time:最后一次提交题目日期
    牛客网有很多7级红名大佬这是众所周知的,小白希望知道这些大佬的成就值各自占据了所有人成就值总和的百分之多少,你能帮他吗?

    在这里插入图片描述

    实现代码:

    import pandas as pd
    Nowcoder = pd.read_csv('Nowcoder.csv', sep=',')
    nc=Nowcoder.loc[Nowcoder['Level']==7]
    print(nc['Achievement_value']/Nowcoder['Achievement_value'].sum())
    
    • 1
    • 2
    • 3
    • 4

    运行结果:
    在这里插入图片描述



    3. 牛客网用户最高的正确率

    描述: 现有一个Nowcoder.csv文件,它记录了牛客网的部分用户数据,包含如下字段(字段与字段之间以逗号间隔):
    Nowcoder_ID:用户ID
    Level:等级
    Achievement_value:成就值
    Num_of_exercise:刷题量
    Graduate_year:毕业年份
    Language:常用语言
    Continuous_check_in_days:最近连续签到天数
    Number_of_submissions:提交代码次数
    Last_submission_time:最后一次提交题目日期
    牛客网有那么多刷题的用户,有的人身经百战,刷题无数但是反复提交了多次错误的代码debug之后才能通过,牛牛想知道牛客网最高的正确率能有多少,为了公平起见,他决定只统计刷题数量大于10题的用户,请你帮帮他。

    在这里插入图片描述

    实现代码:

    import pandas as pd
     
    Nowcoder = pd.read_csv('Nowcoder.csv', sep=',')
    Nowcoder_10 = Nowcoder.loc[Nowcoder['Num_of_exercise'] > 10,:]
    Nowcoder_10['avg_grade'] = Nowcoder_10['Num_of_exercise']/Nowcoder_10['Number_of_submissions']
    result = Nowcoder_10.avg_grade.max()
    print(round(result,3))
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7

    运行结果:

    在这里插入图片描述



    4. 统计牛客网用户的名字长度

    描述: 现有一个Nowcoder.csv文件,它记录了牛客网的部分用户数据,包含如下字段(字段与字段之间以逗号间隔):
    Nowcoder_ID:用户ID
    Name:用户名
    Level:等级
    Achievement_value:成就值
    Num_of_exercise:刷题量
    Graduate_year:毕业年份
    Language:常用语言
    Continuous_check_in_days:最近连续签到天数
    Number_of_submissions:提交代码次数
    Last_submission_time:最后一次提交题目日期
    运营小周同学想要统计这些用户的名字长度,你可以帮助她吗?

    在这里插入图片描述

    实现代码:

    import pandas as pd
     
    Nowcoder = pd.read_csv('Nowcoder.csv', sep=',')
     
    print(Nowcoder['Name'].apply(lambda x : len(x)))
    
    • 1
    • 2
    • 3
    • 4
    • 5

    运行结果:

    在这里插入图片描述


    《100天精通Python》专栏推荐白嫖80g Python全栈视频

    《100天精通Python从入门到就业》:本专栏专门针对零基础和需要进阶提升的同学所准备的一套完整教学,从0到100的不断进阶深入,后续还有实战项目,轻松应对面试,专栏订阅地址:https://blog.csdn.net/yuan2019035055/category_11466020.html

    • 优点订阅限时9.9付费专栏进入千人全栈VIP答疑群,作者优先解答机会(代码指导、远程服务),群里大佬众多可以抱团取暖(大厂内推机会)!
    • 专栏福利简历指导、招聘内推、每周送实体书、80G全栈学习视频、300本IT电子书:Python、Java、前端、大数据、数据库、算法、爬虫、数据分析、机器学习、面试题库等等
      在这里插入图片描述
      在这里插入图片描述
  • 相关阅读:
    Linux网络编程(高并发服务器)
    Pandas数据分析20——pandas窗口计算
    mkv转mp4,大家都在用的方法
    PCL 投影点云
    pearl life introduction
    架构师进阶,微服务设计与治理的16条常用原则
    动态SQL第一部分(重点)
    STM8应用笔记2.变量空间的分配
    【图神经网络论文整理】(五)—— Self-Attention Graph Pooling:SAGPool
    怎样清理Mac存储空间 苹果电脑内存不够用怎么办 苹果电脑内存满了怎么清理
  • 原文地址:https://blog.csdn.net/yuan2019035055/article/details/126931894