Python每日一练(牛客数据分析篇新题库)——第31天:中位函数
文章目录
- 1. 牛客网不同语言使用人数
- 2. 牛客网用户最近的最长与最短连续签到天数
- 3. Python用户的平均提交次数
- 4. 牛客网用户等级的中位数
- 5. 如何让刷题更加高效呢?
前言📢📢
最近很多学了基础的小伙伴问我该怎么提升编程水平?学了基础该上哪刷题?明明学了很多,做项目却不知道怎么上手,其实这就是练得太少,只注重了学,却忽视了刷题,只有不断练习才能提高和巩固编程思维和能力!
刚好看到牛客网最近出了Python的新题库于是体验了一番感觉还不错
链接地址:牛客网 | Python从入门到实践四十招,废话少说速度上号,或者跟着下文一起刷题!!!
1. 牛客网不同语言使用人数
描述: 现有一个Nowcoder.csv文件,它记录了牛客网的部分用户数据,包含如下字段(字段与字段之间以逗号间隔):
Nowcoder_ID:用户ID
Level:等级
Achievement_value:成就值
Num_of_exercise:刷题量
Graduate_year:毕业年份
Language:常用语言
刚刚发现牛客网想要学习编程的小白,不知道优先学习什么语言,刷什么题单,你能帮助他从这个csv文件中找到牛客网各种语言使用的用户分别有多少吗?
实现代码:
import pandas as pd
Nowcoder = pd.read_csv('Nowcoder.csv', sep=',')
print(Nowcoder['Language'].value_counts())
运行结果:
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:最后一次提交题目日期
运营同学想要统计牛客网的用户的最近的连续签到情况,他想知道最长的用户已经连续签到了多久,最短的用户又连续签到了多久,请帮他输出一下。
实现代码:
import pandas as pd
Nowcoder = pd.read_csv('Nowcoder.csv', sep=',')
# 最长
day_max = Nowcoder['Continuous_check_in_days'].max()
# 最短
day_min = Nowcoder['Continuous_check_in_days'].min()
print(day_max, '\n', day_min)
运行结果:
3. Python用户的平均提交次数
描述: 现有一个Nowcoder.csv文件,它记录了牛客网的部分用户数据,包含如下字段(字段与字段之间以逗号间隔):
Nowcoder_ID:用户ID
Level:等级
Achievement_value:成就值
Num_of_exercise:刷题量
Graduate_year:毕业年份
Language:常用语言
Continuous_check_in_days:最近连续签到天数
Number_of_submissions:提交代码次数
Last_submission_time:最后一次提交题目日期
打算学习Python的小白同学打开了牛客网,他想知道Python到底难不难,于是他想从牛客网Python用户都平均提交了多少次代码来认识,请你帮他找一找。
实现代码:
import pandas as pd
Nowcoder = pd.read_csv('Nowcoder.csv', sep=',')
print((Nowcoder.query("Language == 'Python'")['Number_of_submissions'].mean().round(1)))
运行结果:
4. 牛客网用户等级的中位数
描述: 现有一个Nowcoder.csv文件,它记录了牛客网的部分用户数据,包含如下字段(字段与字段之间以逗号间隔):
Nowcoder_ID:用户ID
Level:等级
Achievement_value:成就值
Num_of_exercise:刷题量
Graduate_year:毕业年份
Language:常用语言
Continuous_check_in_days:最近连续签到天数
Number_of_submissions:提交代码次数
Last_submission_time:最后一次提交题目日期
牛客网运营同学有一个活动,需要统计所有用户等级的中位数,但是为了去掉一些非常不活跃的账号,于是他们只统计刷题数量不低于10题的那部分用户。
实现代码:
import pandas as pd
Nowcoder = pd.read_csv('Nowcoder.csv', sep=',')
Nowcoder_1 = Nowcoder.loc[Nowcoder['Num_of_exercise'] >= 10,:]
Level_M = int(Nowcoder_1.Level.median())
print(Level_M)
运行结果:
5. 如何让刷题更加高效呢?
嫌博主更新慢的小伙伴牛客网上号自行刷题
链接地址:牛客网 | Python从入门到实践四十招,废话少说速度上号!!!