Python数据分析入门实战一:统计分析用户学习数据

Python数据分析要求:

使用 Python 基础知识分析用户学习数据 json 文件,并从文件中统计出中指定的数据项。

用户学习数据 json 文件下载:

http://labfile.oss.aliyuncs.com/courses/764/user_study.json

user_study.json 文件部分内容展示如下:

{"minutes": 30, 
"created_at": "2016-05-01 00:00:10", 
"user_id": 199071, 
"lab": "\u7528\u6237\u53ca\u6587\u4ef6\u6743\u9650\u7ba1\u7406", 
"course": "Linux \u57fa\u7840\u5165\u95e8\uff08\u65b0\u7248\uff09"}

文件中每一项为用户学习记录,代表某用户的某一次学习,其中每一项字段含义如下:

  • user_id 用户 ID
  • lab 实验名称
  • course 课程名称
  • minutes 学习分钟数
  • created_at 学习时间

在本挑战中,你需要编写analysis.py文件,定义函数 analysis解析并统计学习数据,analysis 函数接受两个参数。第一个参数为学习数据 json 文件名称,其文件内容格式和 user_study.json 文件格式一致,第二个参数为 用户 ID。

你需要在函数中解析 json 文件中,并从中统计出第二个参数指定的用户 ID 的学习次数和总学习分钟数,也就是说函数将返回两个值,第一个为指定用户的学习时间,第二个为指定用户的总学习分钟数。

示例代码:

# 需要使用 json 包解析 json 文件
import json


def analysis(file, user_id):
    times = 0
    minutes = 0

    # 完成剩余代码

    return times, minutes
  • 函数名必须是 analysis
  • 代码必须写入 ~/Code/analysis.py 文件中;
  • analysis 函数接受两个参数,第一个参数是 json 文件名称,第二个参数是用户 ID;
  • analysis 函数返回两个值,第一个值是指定用户的学习时间,第二个值是指定用户的学习分钟数;
  • 如果传递给 analysis 函数的文件不存在或者用户 ID 不存在时返回 0 即可;

提示

  • Python 中可以使用 json 包解析 json 文件;
  • user_study.json 文件包含的是 json 文本,包含了多项用户学习数据;
  • 下一页有答案

125jz网原创文章。发布者:江山如画,转载请注明出处:http://www.125jz.com/10199.html

(1)
江山如画的头像江山如画管理团队
上一篇 2022年2月3日 上午9:59
下一篇 2022年2月19日 上午8:46

99%的人还看了以下文章

  • python 初学者练手上机实操五-循环语句练习

    一、题目:定义一个名称为numList的列表[1,5,9,8,12,43],使用for循环 遍历该列表,输出包含的元素 1、新建一个“for.py”文件。 2、编写程序。 3、调试程序。 4、排除错误。 二、、题目:定义一个名称为numTuple的元级(1,5,9,8,12,43),使用for循环 遍历该元组,输出包含的元素 三、分别使用for循环和whil…

    2023年5月26日
    13.5K1
  • 基于jspSmartUpload的Jsp文件上传实例

    SmartUpload是一个免费的文件上传下载组件1、使用简单:仅三五行代码就可以搞定文件的上传2、方便存取:利用组件提供的对象,可以获得全部上传文件的信息(包括文件名,大小,类型,扩展名,文件数据等)。3、能对上传的文件在大小、类型等方面做出限制。如此可以滤掉不符合要求的文件。 下载jsmartcom_zh_CN.jar文件:http://www.125j…

    2018年12月11日
    3.1K0
  • 人工智能基础测试

    1、 print(“Hi”) print(“3*6”) 程序输出结果:(5分) A、 Hi 18 B、 Hi 3*6 C、 Hi 3*6 D、 Hi 18 2、人工智能的概念最早是由哪一位科学家提出来的()(5分) A、 麦卡锡 B、 图灵 C、 冯·诺依曼 D、 马明斯基 3、下列关于人工智能的叙述不正确的有…

    2023年6月2日
    8.0K0
  • opencv 图像旋转 cv2.rotate和np.rot90案例精讲

    OpenCV 方法 OpenCV 中带有一个旋转图像的函数 cv2.rotate rotate(src, rotateCode[, dst]) -> dst参数:src:输入图像rotateCode:旋转方式1、cv2.ROTATE_90_CLOCKWISE:顺时针 90 度2、cv2.ROTATE_180:顺时针 180 度3、cv2.ROTATE_…

    2022年12月1日
    8.9K0
  • Double.valueOf(r).doubleValue();是什么意思

    在一段代码中看到Double.valueOf(“2020”).doubleValue(),先出现了Double.valueOf(),又用了doubleValue(),有点迷惑,为什么这么用呢? <% String s=request.getParameter(“radius”); double r; if(s!=null) {r…

    2019年9月5日
    13.4K0
  • pycharm 中 plt.imshow(img)图片不显示的解决方法(附案例)

    #%matplotlib inline # 使用%matplotlib命令可以将matplotlib的图表直接嵌入到Notebook之中,或者使用指定的界面库显示图表,它有一个参数指定matplotlib图表的显示方式。inline表示将图表嵌入到Notebook中。 # Python提供了许多魔法命令,使得在IPython环境中的操作更加得心应手。魔法命令…

    2023年1月13日
    5.0K0

发表回复

登录后才能评论