牛客网Python篇数据分析习题(五)

1.现有牛客网12月每天练习题目的数据集nowcoder.csv。包含如下字段(字段之间用逗号分隔):
user_id:用户id
question_id:问题编号
result:运行结果
date:练习日期
请你统计答对和答错的总数分别是多少。

import pandas as pd

data = pd.read_csv("nowcoder.csv", sep=",")

print(data.groupby("result")["result"].count())

2.现有牛客网12月每天练习题目的数据集nowcoder.csv。包含如下字段(字段之间用逗号分隔):
user_id:用户id
question_id:问题编号
result:运行结果
date:练习日期
请你统计2021年12月连续练习题目3天及以上的所有用户。

import pandas as pd

nd = pd.read_csv("nowcoder.csv")
nd["date"] = pd.to_datetime(nd["date"])
nd["date_1"] = nd["date"].dt.strftime("%Y-%m")
data = nd[nd["date_1"] == "2021-12"]
data["date_2"] = pd.to_datetime(data["date"].dt.date)
data["rk"] = pd.to_timedelta(data.groupby(["user_id"])["date_2"].rank(), unit="d")
data["cha"] = data["date_2"] - data["rk"]
result = data.groupby(["user_id", "cha"]).count().groupby("user_id")["rk"].max()

print(result[result >= 3])

3.现有一个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
import datetime as dt

nd = pd.read_csv("Nowcoder.csv")

print(nd.groupby("Graduate_year")["Achievement_value"].max())

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
import datetime as dt

nd = pd.read_csv("Nowcoder.csv")

print(nd.groupby(["Level", "Language"])["Nowcoder_ID"].count())

5.现有一个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:最后一次提交题目日期
产品经理小X同学想要分析一下用户的等级数据,他想知道在人数大于5的条件下,各个等级都分别有多少人?

import pandas as pd
import datetime as dt

nd = pd.read_csv("Nowcoder.csv")

nd_time = nd.groupby("Level")["Level"].count()

print(nd_time)

6.某公司计划举办一场运动会,现有运动会项目数据集items.csv。 包含以下字段:
item_id:项目编号;
item_name:项目名称;
location:比赛场地。
有员工报名情况数据集signup.csv。包含以下字段:
employee_id:员工编号;
name:员工姓名;
sex:性别;
department:所属部门;
item_id:报名项目id
请你统计各类型项目的报名人数。

import pandas as pd

df = pd.read_csv("items.csv")
df1 = pd.read_csv("signup.csv")

data = pd.merge(df, df1, on="item_id")

print(data.groupby(["item_name"])["item_name"].count())

7.某公司计划举办一场运动会,现有运动会项目数据集items.csv。 包含以下字段:
item_id:项目编号;
item_name:项目名称;
location:比赛场地。
有员工报名情况数据集signup.csv。包含以下字段:
employee_id:员工编号;
name:员工姓名;
sex:性别;
department:所属部门;
item_id:报名项目id
请你统计各类型项目的报名人数。

import pandas as pd

signup = pd.read_csv("signup.csv")
items = pd.read_csv("items.csv")
df = pd.merge(signup, items, on="item_id")

print(df.groupby("item_name")["item_id"].count())

8.某公司计划举办一场运动会,现有部分运动会项目数据集items.csv。 包含以下字段:
item_id:项目编号;
item_name:项目名称;
location:比赛场地。
有员工报名情况数据集signup.csv。包含以下字段:
employee_id:员工编号;
name:员工姓名;
sex:性别;
department:所属部门;
item_id:报名项目id。
另有signup1.csv,是education部门的报名情况,包含字段同signup.csv。
请你将signup.csv与signup1.csv的数据集合并后,统计各类型项目的报名人数。

import pandas as pd

items = pd.read_csv("items.csv")
signup = pd.read_csv("signup.csv")
signup1 = pd.read_csv("signup1.csv")
signup_all = pd.concat([signup, signup1])
df = pd.merge(items, signup_all, on="item_id")

print(df.groupby("item_name").size())
  • 5
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

漫步桔田

编程界的一枚小学生!感谢支持!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值