啊啊啊啊,本来想着一口气结束的,然后发现13分钟的mooc花了40多分钟才解决完,,整个人都不好了

'''案例一:电影评分数据集的分析     https://grouplens.org/datasets/movielens/可以到这个网站里面搞到关于电影的数据,仅仅需要三个数据:u.data(评分数据)/u.item(电影数据)/u.user(观众记录)#这里先保存下E:\\OneDrive\\桌面\\ml-100k\\ml-100k
'''
import pandas as pdpd.set_option('display.max_rows', None)  # 显示所有数据,不加省略,挺有用的
unames = ['uid', 'age', 'gender', 'occupation', 'zip']
# ''里面的是文件路径,sep表达的是分隔符(在读取的时候以这个符号分割,)header表达的是行标题,最后一个是映射方式,按照上面定义的进行表格的自动化映射
users = pd.read_table('E:\\OneDrive\\桌面\\ml-100k\\ml-100k\\u.user', sep='|', header=None, names=unames)
# 取样,读取前五个记录
# print(users.head(5))
# 也可以切片
# print(user[:5])# 接下来读取评分数据
rnames = ['uid', 'mid', 'rating', 'timestamp']
ratings = pd.read_table('E:\\OneDrive\\桌面\\ml-100k\\ml-100k\\u.data', sep='\t', header=None, names=rnames)
# 这里可能是版本问题,必须要加left_on,right_on
frame = pd.merge(ratings, users, left_on='uid', right_on='uid')
'''
print(frame['rating'].groupby(frame['gender']).mean())
'''
# 下面是按年龄和性别分类计算它们的评分平均数(可以看一个人评判是否严格)
# print(frame['rating'].groupby([frame['age'].apply(round, args=[-1]),frame['gender']]).mean())# 添加电影本身的表格
mnames = ['mid', 'title', 'date1', 'date2', 'url', 'unknown', 'Action', 'Adventure','Animation', 'Children', 'Comedy', 'Crime', 'Documentary', 'Drama','Fantasy', 'File-Noir', 'Horror', 'Musical', 'Mystery','Romance', 'Sci-Fi', 'Thiller', 'War', 'Western']
movies = pd.read_table('E:\\OneDrive\\桌面\\ml-100k\\ml-100k\\u.item', sep='|', header=None, names=mnames,encoding='ISO-8859-1')
# print(movies.head(5))
frame1 = pd.merge(frame, movies)
# print(frame1)
# 下面开始整体分析电影评分
# 这里做的时候又犯了个错,好在没花多少时间就找出来了,实在这个正下方,我写的frame,而不是frame1,而我这里用的数据是frame1里面的所以报错
# print(frame1['rating'].groupby([frame1['gender'],frame1['title']]).mean().sort_values(ascending=False))#Fals是倒序输出# 调用agg函数(隶属于dF库)通过列表显示多个聚合函数# 这里做了三个小实验,一个是吧groupby()里面的[]去掉了,然后报错,第二个实验室调换了里面的两个参数的位置,发现表格也会因此改变顺序,可以知道,
# 不同的顺序会显示不同的表格风格,另外,把排序的[]去掉了,只留一个False,也是可以的
# print(frame1['rating'].groupby([frame1['gender'], frame1['title']]).agg(['mean', 'count']).sort_values(
#    by=['count', 'mean'], ascending=[False, False]))#下面进行改进,因为这样的排序是先排人数,在排分,不能够完好地表达分值的排名
# 添加筛选条件进行筛选
frame2 = frame1['rating'].groupby([frame1['gender'], frame1['title']]).agg(['mean', 'count'])
# print(frame2[frame2['count'] >100].sort_values(by='mean',ascending=False))#下面还有可视化界面呈现
# print(frame1.pivot_table('rating',index='title',columns='gender',aggfunc='mean')#透视图,可以理解为多维矩阵,可以吧index理解为列,columns理解为行,aggfinc是专门用在又是图里的聚合函数
#     .sort_values(by='F',ascending=False))#按照女性的标准排序
# 还是得筛选出有效数据
#ratings_by_title = frame1.groupby('title').size()  # size()是返回每个电影评价的个数,loc是一个选择查询
#print(frame1.pivot_table('rating', index='title', columns='gender', aggfunc='mean').loc[#         ratings_by_title.index[ratings_by_title > 100]].#        sort_values(by='F',ascending=False))
#分析哪些电影产生了大的分歧,显示评分差异
frame3 = frame1.pivot_table('rating', index='title', columns='gender', aggfunc='mean')
frame3['diff'] = frame3['M']-frame3['F']#将后面的().apply(abs),使用绝对值
print(frame3.sort_values(by='diff',ascending=True))

明天吧,
开始python数据子查询,
java(得重学,上次考C因为选择题二级没过,这次尝试java二级,特地花了45买了系统和书),
还有IOT的开始(笑,根本不会),都是自己填的坑啊

Leo的假期学习记录python大数据入门篇(3)相关推荐

  1. 女友问粉丝过万如何庆祝,我发万字长文《保姆级大数据入门篇》感恩粉丝们支持,学姐|学妹|学弟|小白看了就懂

    2021大数据领域优质创作博客,带你从入门到精通,该博客每天更新,逐渐完善大数据各个知识体系的文章,帮助大家更高效学习. 有对大数据感兴趣的可以关注微信公众号:三帮大数据 目录 粉丝破万了 新星计划申 ...

  2. 女友问粉丝过万如何庆祝,我发长文《保姆级大数据入门篇》感恩粉丝们支持,学姐|学弟看了就懂

    文章目录 粉丝破万了 新星计划申请时粉丝数 新星内卷抢热榜之旅 运营整顿新星执行新规 重整旗鼓输出内容为王 女友问粉丝过万如何庆祝 保姆级大数据入门篇 一.学习重点划定 二.Java和大数据关系 三. ...

  3. 2022新版Python+大数据学习路线图,附视频教程

    互联网的未来也是人工智能的未来,那就少不了Python+大数据的助力,对于想要转行的小伙伴来说,或许这是一个新兴赛道. 第一阶段 大数据开发入门 学前导读:从传统关系型数据库入手,掌握数据迁移工具.B ...

  4. python大数据工程师 培训_大数据工程师需要学习哪些?

    经常有初学者在QQ问我,自己想往大数据方向发展,该学哪些技术,学习路线是什么样的,觉得大数据很火,就业很好,薪资很高.如果自己很迷茫,为了这些原因想往大数据方向发展,也可以,那么我就想问一下,你的专业 ...

  5. python大数据培训机构_学大数据开发需要学习python吗

    大数据现在互联网火热的一个名词,而和大数据关键词最紧密的相信就是Java和python了,在一年以前,Java大数据可能是很多培训机构的宣传标语.而到了2018年,python大数据则成为了潮流,无论 ...

  6. python大数据工程师证书_大数据工程师需要学习哪些?

    其实这就是想告诉你的大数据的三个发展方向,平台搭建/优化/运维/监控.大数据开发/设计/架构.数据分析/挖掘.请不要问我哪个容易,哪个前景好,哪个钱多. 先扯一下大数据的4V特征: 数据量大,TB-& ...

  7. 2022年Python+大数据学习路线图,源码笔记,最优学习资源

    任何学习过程都需要一个科学合理的学习路线,才能够有条不紊的完成我们的学习目标.Python+大数据所需学习的内容纷繁复杂,难度较大,所以今天特别为大家整理了一个全面的Python+大数据学习路线图,帮 ...

  8. Python+大数据-Python学习(七)

    Python+大数据-Python学习(七) 1.文件的基本操作 文件打开的格式: file = open(文件路径,读写模式) ​ - open默认打开的式r模式 文件路径:可以写相对路径,也可以写 ...

  9. Python+大数据-Python学习(五)

    Python+大数据-Python学习(五) 1.函数的基本使用 函数是一个被命名的.独立的.完成特定功能的代码段,其可能给调用它的程序一个返回值.被命名的:在Python中,大部分函数都是有名函数 ...

  10. Python大数据综合应用 :零基础入门机器学习、深度学习算法原理与案例

    机器学习.深度学习算法原理与案例实现暨Python大数据综合应用高级研修班 一.课程简介 课程强调动手操作:内容以代码落地为主,以理论讲解为根,以公式推导为辅.共4天8节,讲解机器学习和深度学习的模型 ...

最新文章

  1. linux主机设置本地swap
  2. centOS下为PHP安装Xdebug
  3. [译文]ASCII art with C#
  4. 多目标跟踪笔记二:Efficient Algorithms for Finding the K Best Paths Through a Trellis
  5. python导入包库的两种语句import 和 from … import
  6. 思科设备snmp配置。
  7. hibernate+struts2整合jar包冲突
  8. 2015蓝桥杯省赛---java---A---3(九数分三组)
  9. 182. 查找重复的电子邮箱
  10. python窗口图形界面编程上传图片_python GUI编程(Tkinter) 创建子窗口及在窗口上用图片绘图实例...
  11. 关于WPF的Binding 的 ConverterParameter 参数的动态设置
  12. #论文学习#第二篇:CNN-SLAM: Real-time dense monocular SLAM with learned depth prediction
  13. EOS代码架构及分析(二)
  14. 【翻译】配置RSVP-signaled LSP
  15. 三分钟学会数据库, replace() 替换
  16. Spring Boot Gradle 瘦身打包 thinJar,分离 lib jar 依赖
  17. JDK8新特性(五):JDK8时间日期API
  18. Tecnomatix Plant Simulation 2201
  19. 凛冬已至,望各位早日背上行囊出发
  20. 设计模式01 UML图,软件设计原则,创建型模式

热门文章

  1. 面试时,你会问面试官哪些问题?
  2. 【iOS】UI基础Day2-笔记(毛玻璃、帧动画、音效等)
  3. 上交所实时行情文件汇总
  4. 团队管理(一)-会议纪要的高效记录和执行
  5. 《如何有效阅读一本书》:读再多书,不如先学会如何读书
  6. 联想g400从u盘启动计算机,联想g400怎么进bios设置u盘启动图文教程
  7. 在 Linux 下执行 bin 文件
  8. 蓝牙计算机操作与设置在哪里,win7电脑蓝牙在哪里打开_win7笔记本怎么开蓝牙
  9. [除一波线段树和平衡树的草]
  10. IntelliJ IDEA中文汉化教程