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%的人还看了以下文章

  • python 初学者练手上机实操一

    一、从键盘输入商品名称、商品的单价、商品的数量, 计算商品总价,并按如下格式输出: 商品名称:牛奶,单价:5元,数量:2件,总价:10元 二、从键盘输入年龄,如果>=18岁显示“已成年”,否则显示“未成年”。 三、输入三条边长,如果能构成三角形就计算周长并显示,否则显示“不能构成三角形”。 四、百分制成绩转换为等级制成绩。 要求:如果输入的成绩在90分…

    2023年4月7日
    6.2K0
  • 第二章 Web技术简介

    1. 掌握HTML 5标记语言
    2. 掌握CSS样式表的使用
    3. 掌握JavaScript脚本语言
    4. 能够使用HTML5+CSS+JS 进行web页面设计

    2018年2月2日
    20.9K0
  • Pycharm Django项目 NameError: name ‘os’ is not defined

    Pycharm Djarngo项目报错 NameError: name ‘os’ is not defined 原因:这里调用了os模块,但是文件头并没引用os模块解决办法:在settings.py文件头加上 import os

    2024年12月2日
    9690
  • JSP一次上传多个文件(基于jspSmartUpload)

    支持中文的jsp文件上传组件:jspSmartUpload.jar下载 可以一次上传多个文件 upload.html <html> <head> <title>网页设计:文件上传</title> <meta http-equiv=”Content-Type” content=”text/html; cha…

    编程开发 2021年11月25日
    2.7K0
  • 精!如何在IDEA中导入myeclipse项目、配置并运行(实例演示)

    精!如何在IDEA中导入myeclipse项目、配置并运行(实例演示)精!如何在IDEA中导入myeclipse项目、配置并运行(实例演示)精!如何在IDEA中导入myeclipse项目、配置并运行(实例演示)精!如何在IDEA中导入myeclipse项目、配置并运行(实例演示)

    125建站网站长原来开发的myeclipse项目直接在IDEA打开发现会有很多问题,根据解决过程,写出此文章供大家参考! 1.首先打开IDEA工具,选择导入项目,然后在弹出的窗口中选择要打开的myeclipse文件,然后点击确定。如图所示 2.选择Eclipse,然后一直下一步 3.正常我们SDK这里都配置好了,直接选择就好,然后完成项目的导入 4.导入的完…

    2023年2月3日 编程开发
    8.3K0
  • java实现上位机与下位机串口通信实例(含java串口通信jar包下载及代码)

    java实现上位机与下位机串口通信实例(含java串口通信jar包下载及代码)java实现上位机与下位机串口通信实例(含java串口通信jar包下载及代码)java实现上位机与下位机串口通信实例(含java串口通信jar包下载及代码)java实现上位机与下位机串口通信实例(含java串口通信jar包下载及代码)

      串口通信在工程应用中很常见。 上位机与下位机 在上位机与下位机通讯过程中常通过有线的串口进行通信,在低速传输模式下串口通信得到广泛使用。 通常上位机指的是PC,下位机指的是单片机或者带微处理器的系统。下位机一般是将模拟信号经过AD采集将模拟量转换为数字量,下位机再经过数字信号处理以后将数字信号通过串口发送到上位机,相反上位机可以给下位机发送一些指令或者信…

    2023年1月7日 编程开发
    6.7K0

发表回复

登录后才能评论