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())
- 点赞
- 收藏
- 关注作者
评论(0)