• 4 pandas模块,Series类


     
    对gtx图像进行操作,使用numpy知识
     
    如果让gtx这张图片在竖直方向上进行颠倒。
     
    如果让gtx这张图片左右颠倒呢?
     
    如果水平和竖直方向都要颠倒呢?
     
    如果需要将gtx的颜色改变一下呢?
     
     
    每隔5行数据取一行,列全取,显示的图片会如何呢?图片只剩一部分了
     
    每隔5列取一列,行全取,显示的图片会如何?
     
    马赛克一下?还可以更夸张地马赛克。
     
    接近于岛国爱情动作片的马赛克了
     
    还可以修改颜色值。
     
    好了,接下来学习pandas模块了。
     
    什么是pandas?
        · Python Data Analysis Library 或 pandas 是基于numpy的一种工具,该工具是为了解决数据分析任务而创建的
     
        · pandas纳入了大量库和一些标准的数据模型,提供了高效地操作大型数据集所需的工具(用excel打开一个500M的文件,非常耗时,更大的可能就打不开了)(用pandas可以打开2G的CSV格式的文件,CSV文件是可以用EXCEL打开的)。
     
        · pandas提供了大量能使我们快速便捷地处理数据的函数和方法
     
        · 它使Python成为强大而高效的数据分析环境的重要因素之一
            · Series 是一个类似数组的数据结构
            · DataFrame 数据框,类似于Excel,DataFrame组织数据,处理数据
        
     
    Pandas的数据结构
        导入pandas:
     
        数据分析三剑客:numpy,serise,matplotlib
            
     
    1、Series
        Series是一种类似于一维数组的对象,由下面两个部分组成:
     
            · values:一维数组(ndarray类型)
            · index:相关的数据索引标签
     
     
     
            1) Series的创建
                两种创建方式:
                (1)由列表或numpy数组创建
                        默认索引为0-n-1的整数型索引
                        第一列数值就是索引。
     
                        还可以通过设置index参数指定索引
                    需要注意:索引的个数要和元素的个数对应,因为二者是一一对应的关系。
     
                nd如果是多维的该如何?

                报错了,说明Series中存放的数据必须是一维的。切记!
                特别的,由ndarray创建的是引用,而不是副本。对Series元素的改变会改变原来的ndarray对象中的元素。(列表没有这种情况)
     
     
            (2)由字典创建 
     
     
     
    练习1:
    使用多种方法创建以下Series,命名为s1
    语文 150
    数学 150
    英语 150
    理综 300
    因为字典的元素是无序的,所以s1中的顺序就不一定是什么了。如果元素的顺序比较重要,就不要用这种方法了。
     
     
     
     
            2) Series的索引和切片
            可以使用中括号取单个索引(此时返回的是元素类型),或者中括号里一个列表取多个索引(此时返回的仍然是一个Series类型)。分为显式索引和隐式索引:
     
                (1)显式索引:
                        - 使用index中的元素作为索引值
                        - 使用.loc[](推荐)
                        
                        注意:此时是闭区间
     
     
                (2)隐式索引:
                        - 使用整数作为索引值
                        - 使用.iloc[](推荐)
                        
                        注意:此时是半开区间
     
     
     
                (3)切片
     
                        显式切片
     
                        隐式切片
     
     
     
            3) Series的基本概念
                可以把Series看成一个定长的有序字典
     
                可以通过shape,size,index,values等得到series的属性
     
                    s.values的类型就是ndarray
                    有了索引之后更方便
                    百度就是网站的索引
     
                    可以通过head()/tail()快速查看Series对象的样式,显式前/后几行。

     
      
                    可见DataFrame是由Series组成的。
     
     
                当索引没有对应的值时,可能出现缺失数据显示NaN (not a number) 的情况

                二者不相等啊。
     
     
                可以使用pd.isnull()、pd.notnull()或自带isnull()、notnul()函数检测缺失数据

     
            因为null类型的数据是没有办法参与运算的,可以用如下方法把null类型的元素剔除掉。当数据量比较大的时候就用得着了,不能人工逐个判断了。
     
     
     
            Series对象及其实例都有一个name属性。
     
     
     
            4) Series的运算
     
                (1)适用于numpy的数组运算也适用于Series
                        如果 c、d 的NaN也想加上 10 可以尝试如下操作:
     
     
                (2)Series之间的运算
                        · 在运算中自动对齐不同索引的数据
                        · 如果索引不对应,则补NaN
     
     

          注意:想要保留所有的index,则需要使用.add()函数。

    ===========
    练习:
        1:想一想Series运算和ndarray运算的规则有什么不同?
         2:新建另一个索引包含“文综”的Series s2,并与s2进行多种算术操作。思考如何保存所有数据。

  • 相关阅读:
    布隆过滤器原理与应用场景
    【转】程序员的世界真的很难懂~
    IDEA 2019.2.4 破解安装教程
    【转】只有程序员才能看得懂的段子
    Linux 正则表达式
    【转】雷军做程序员时写的博客,很强大!
    如何同步 Linux 集群系统时间
    百度共享云盘
    Shell 脚本 test 命令详解
    Linux 命令大全
  • 原文地址:https://www.cnblogs.com/avention/p/9063555.html
Copyright © 2020-2023  润新知