• 总共有多少学生?map(), distinct(), count()
  • 开设了多少门课程?
  • 每个学生选修了多少门课?map(), countByKey()
  • 每门课程有多少个学生选?map(), countByValue()
  • Tom选修了几门课?每门课多少分?filter(), map() RDD
  • Tom选修了几门课?每门课多少分?map(),lookup()  list
  • Tom的成绩按分数大小排序。filter(), map(), sortBy()
  • Tom的平均分。map(),lookup(),mean()
  • 求每门课的选修人数及平均分。combineByKey()
  •  course_list = stu_rdd_cource_count_reduce.collect()

      sk = ''
      rs = 0
      zf = 0
      for j in range(len(course_list)):
        sk = str(course_list[j]).split(',')[0].replace("('",'').replace("'",'')
        rs = int(str(course_list[j]).split(',')[1].replace(')',''))
        zf = int(str(stu_rdd_cource_sum_reduce.collect()[j]).split(',')[1].replace(')',''))
        print(sk, rs,round(zf/rs,2))

    结果可视化。 pyecharts.charts,Bar()

    import pyecharts.options as opts
    from pyecharts.charts import Bar

    x = ['ComputerNetwork', 'Software', 'DataBase', 'Algorithm', 'OperatingSystem', 'Python', 'DataStructure', 'CLanguage']
    y = [
    [142, 132, 126, 144, 134, 136, 131, 128],
    [51.9, 50.91, 50.54, 48.83, 54.94, 57.82, 47.57, 50.61]
    ]

    bar = (
    Bar()
    .add_xaxis(x)
    .add_yaxis(series_name='总人数', y_axis=y[0])
    .add_yaxis(series_name='平均分', y_axis=y[1])
    .set_series_opts(label_opts=opts.LabelOpts(is_show=False))
    .set_global_opts(title_opts=opts.TitleOpts(title='课程', pos_left='right'))
    .set_global_opts(toolbox_opts=opts.ToolboxOpts(is_show=True),
    yaxis_opts=opts.AxisOpts(name="总人数"),
    xaxis_opts=opts.AxisOpts(name="课程名"),axislabel_opts=opts.LabelOpts(rotate=15))
    )
    bar.render()
    bar.render('./bar.html')

最新文章

  1. PHP微信墙制作,开源
  2. 【VerySky原创】RPR_ABAP_SOURCE_SCAN
  3. ubuntu启动器和dash里应用图标不正常
  4. C专家编程学习 1
  5. 一段画对角线的canvas代码,之前没有写过canvas代码,现在记录下来
  6. DataTable 基本转换简单实例
  7. string.Format 指定字符串宽度
  8. ANDROID (eclipse)开发常见问题及解决办法汇总
  9. 10.26最后的模拟DAY2 改造二叉树[中序遍历+严格递增的最长不下降子序列]
  10. selenium框架与chrome浏览器的不兼容问题
  11. QQ_SingleTalkClient
  12. C#集合之链表
  13. JUnit学习
  14. SpringMVC拦截器 - 设置不拦截html,js等静态文件
  15. ORA-00936: missing expression
  16. Django+xadmin打造在线教育平台(一)
  17. Python数据基础--列表、元组、字典、函数
  18. Js 控制随机数概率
  19. 清理.git文件
  20. PCL学习笔记二:Registration (ICP算法)

热门文章

  1. CVE-2022-26923 Windows域提权漏洞
  2. Springcloud源码学习笔记1—— Zuul网关原理
  3. [LeetCode]螺旋矩阵
  4. 自己的devc++的语法配置
  5. 交叉编译esp8089
  6. 目标检测+双目测距——基于yolov5
  7. 洛谷P3654 First Step题解
  8. 痞子衡单片机排行榜(2022Q4)
  9. Java基础1-1-3—java基础语法(条件控制语句)
  10. 如何通过Zabbix Docker配置HTTPS访问系统?