Python每日一练(牛客数据分析篇新题库)——第33天:中位函数
文章目录
- 1. 牛客用户刷题量的方差与提交次数的标准差
- 2. 大佬用户成就值比例
- 3. 牛客网用户最高的正确率
- 4. 统计牛客网用户的名字长度
- 5. 如何让刷题更加高效呢?
前言📢📢
最近很多学了基础的小伙伴问我该怎么提升编程水平?学了基础该上哪刷题?明明学了很多,做项目却不知道怎么上手,其实这就是练得太少,只注重了学,却忽视了刷题,只有不断练习才能提高和巩固编程思维和能力!
刚好看到牛客网最近出了Python的新题库于是体验了一番感觉还不错
链接地址:牛客网 | Python从入门到实践四十招,废话少说速度上号,或者跟着下文一起刷题!!!
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))
运行结果:
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())
运行结果:
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))
运行结果:
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)))
运行结果:
5. 如何让刷题更加高效呢?
嫌博主更新慢的小伙伴牛客网上号自行刷题
链接地址:牛客网 | Python从入门到实践四十招,废话少说速度上号!!!