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)
江山如画的头像江山如画管理团队
Python 函数练习-生成指定长度的随机字符串(包含大小写字母,及数字)
上一篇 2022年2月3日 上午9:59
如何把科学伦理、工程伦理融入专业课课程思政?(含可操作步骤及方法)
下一篇 2022年2月19日 上午8:46

99%的人还看了以下文章

  • 第3课:C语言程序的构成和书写规则

    先来看一个C语言程序:输入两个正整数,计算并输出两数的和。 程序代码: /*ex1_2.c:求两个正整数的和*/ #include <stdio.h> void main()                         /*主函数*/ {     int a,b,sum;                    /*定义三个整型变量*/    …

    2020年4月5日
    12.3K0
  • 9个要点让你成为优秀的Java程序员

    文章介绍了要成为优秀Java程序员的9个要点,掌握了这些要点,会让你在众多Java开发人员中脱颖而出。

    2022年12月1日
    1.6K0
  • Java Vector可实现自动增长的对象数组

    java.util.vector提供了向量类(Vector)以实现类似动态数组的功能。创建了一个向量类的对象后,可以往其中随意插入不同类的对象,即不需顾及类型也不需预先选定向量的容量,并可以方便地进行查找。 对于预先不知或者不愿预先定义数组大小,并且需要频繁地进行查找,插入,删除工作的情况,可以考虑使用向量类。 向量类提供了三种构造方法: public ve…

    2020年8月20日
    6.2K0
  • Java向mysql数据库插入datetime类型数据实例(精)

    在Mysql数据库中日期跟时间有两种: 1、date类型,date类型也就是我们常见的储存yyyy-MM-dd类型的日期,它不能储存时间,也就是只能储存日期, 2、dateitme就是可以储存日期同时也可以储存时间。 datetime可以保存1000-01-01到 9999-12-31的日期。 上面mysql数据库中birthday字段类型设置的是datet…

    2018年5月2日
    20.6K0
  • 第四章 数据库应用开发案例2

    本章重点讲述以下内容:
    4.4 应用JDBC调用存储过程
    4.5 数据源与连接池技术
    4.6 数据库程序开发案例

    2018年2月7日
    2.7K0
  • 第一章Java Web应用开发技术概述

    1、了解Java Web应用开发技术相关知识
    2、掌握jsp工作原理
    3、掌握开发环境搭建、开发工具的使用。
    4、掌握Java Web开发的基本步骤
    5、学会设计一个简单的网页程序并运行。

    2018年2月1日
    6.0K0

发表回复

登录后才能评论