某教育平台线上课程运营分析

本文基于某教育平台2018年至2020年的线上课程运营数据,进行了用户分布、用户行为、用户流失及课程受欢迎程度的分析。用户主要集中在沿海省份,特别是广东省,且工作日用户活跃度高于非工作日。流失用户占比高达58%,完成学习任务离开的用户最多。课程方面,免费课程和低价课程更受欢迎,但整体学习进度较低。建议针对不同用户群体实施精细化运营策略,如设立奖励机制、学习提醒等。
摘要由CSDN通过智能技术生成

一、  背景介绍
        近年来,随着互联网与通信技术的高速发展,学习资源的建设与共享呈现出新的发展趋势,各种网课、慕课、直播课等层出不穷,各种在线教育平台和学习应用纷纷涌现。尤其是 2020 年春季学期,受新冠疫情影响,在教育部“停课不停学”的要求下,网络平台成为“互联网+教育”成果的重要展示阵地。因此,如何根据教育平台的线上用户信息和学习信息,通过数据分析为教育平台和用户提供精准的课程推荐服务就成为线上教育的热点问题。
        本赛题提供了某教育平台近两年的运营数据,希望参赛者根据这些数据,为平台制定综合的线上课程推荐策略,以便更好地服务线上用户。     

二、分析目标

        分析该教育平台的用户和课程的整体运营情况,找出问题点,并给出合理化建议

三、分析路线

         按照如下路线进行分析,用户运营主要分析活跃用户和流失用户以及用户分群,掌握整体运营情况并进行用户精细化运营;课程运营主要分析受欢迎程度,为后续课程开发以及推荐提供参考。

三、数据介绍

        1、数据来源:2020年“泰迪杯”数据分析职业技能大赛-某教育平台2018年9月至2020年6月线上课程运营数据

        2、数据详情:该运营数据包含三张数据表,分别为users(用户信息表),study_information(学习详情表),login(登录详情表)。

 四、数据清洗

        为方便后续分析,这里的数据清洗包括缺失值处理、重复值处理、异常值处理、拆分字段。

        1、 缺失值处理

-- 查询各表的缺失值情况
select count(*),count(user_id),count(login_time),count(login_place) from login;
select count(*),count(user_id),count(course_id),count(course_join_time),count(learn_process),count(price) from study_info;
select count(*),count(user_id),count(distinct user_id),count(register_time),
count(recently_logged),count(number_of_classes_join),
count(number_of_classes_out),count(learn_time),count(school) from users;
login表

study_info表

users表

① login表各字段记录数一致,不存在缺失值。

② study_info表总的记录数为194974,price的记录数为190736,price字段存在缺失值。处理思路:查询课程价格为空的课程,然后查看表中是否有相应课程的价格,若有,替换,若没有,将价格设置为0。 

-- 查询价格为空的课程id,查询结果为课程51和课程96
select distinct course_id from study_info where price is null;
-- 查询上述课程id是否有价格
select distinct price from study_info where course_id in ('课程51','课程96');
-- 未查询到上述课程id的价格,所以将价格设置为0,默认为免费课程
update study_info set price=0 where price is null;

 ③users表总的记录数为43983,user_id 的记录数为43916,school的记录数为10571。无user_id其余数据也没有意义,所以将user_id为空的记录删除掉。school字段对分析不重要,此处不做处理。distinct user_id 的记录数为43908,说明user_id 有重复值,后续处理。

delete from users where user_id is null;

         2、重复值处理

-- 查看login和study_info表是否有重复值
select * from login group by 1,2,3 having count(user_id)>1;
select * from study_info  group by 1,2,3,4,5 having count(user_id)>1;
-- 查看users表重复值
select * from users where user_id in (select user_id from users group by user_id having count(user_id)>1);

① login表和study_info没有重复值

② 查询users表中重复的user_id,发现重复user_id有7个,其中4个主要差别是有无学校信息。处理思路:增加一列编号,根据user_id对编号进行分组,组内删除编号小于最大编号的user_id。

-- 增加一列自增长编号
alter table users add column id int PRIMARY key auto_increment;
-- 对编号进行分组,删除编号小于最大编号的user_id 
delete from users where id not in (select a.maxnum from (select max(id) as maxnum from users GROUP BY user_id)a);

         3、异常值处理

-- 查询表login的异常值
select distinct user_id from login order by user_id;
select distinct login_time from login order by login_time;
select distinct login_place from login order by login_place;
-- 查询表 users的异常值
select distinct recently_logged from users order by recently_logged;
select distinct user_id from users order by user_id;
select distinct register_time from users order by register_time;
select distinct number_of_classes_out from users order by number_of_classes_out;
select distinct number_of_classes_join from users order by number_of_classes_join;
select distinct learn_time from users order by learn_time;
select distinct school from users order by school;
-- 查询表study_info的异常值
select distinct user_id from study_info order by user_id;
select distinct course_id from study_info order by course_id;
select distin
  • 0
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值