您的位置:首页 > 理论基础 > 数据结构算法

Pandas库--数据结构

2020-08-10 12:58 351 查看

Pandas库--数据结构

  • 访问数据
  • 数据运算
  • 二维/表格DataFrame
  • 引入Pandas包

    import pandas as pd

    Pandas数据结构

    python的pandas库中数据结构有:

    1. Series
            一维数组,与Numpy中的一维array类似,主要是由数组元素和与之对应的索引构成。Series如今能保存不同种数据类型,字符串、boolean值、数字等都能保存在Series中。

    2. Time- Series
            以时间为索引的Series。

    3. DataFrame
             二维的表格型数据结构。可以将DataFrame理解为Series的容器。

    4. Panel
            三维的数组,可以理解为DataFrame的容器。

    5. Panel4D
            四维数据容器。

    6. PanelND
            拥有factory集合,可以创建像Panel4D一样N维命名容器的模块。

    其中在数据处理方面最主要的两个的数据结构是:Series和DataFrame

    一维Series

          Series是一个类似一维数组的,他能够保存任何类型的数据,最简单的就是由一个数组和与之对应默认的索引值(0~N)组成

    创建对象

    pd.Series(data=None,index=None,dtype=None,name=None,copy=False,fastpath=False)

    其中:data是存放的数据;index是数据对应的索引值;dtype表示存放数据的类型(如int32、bool等);name为存入数据的名字;copy默认的值为false

    (1)通过一维数组的方式创建
    pd.Series([1,2,3,4,5])

    运行的结果:
    类似于一个对应索引值的表格

    index item
    0 1
    1 2
    2 3
    3 4
    4 5
    (2)通过字典的方式创建
    >>> weather={20200803:'rain',20200804:'sun',20200805:'rain'}
    >>> pd.Series(weather)
    20200803    rain
    20200804     sun
    20200805    rain
    dtype: object

    练习:作出一个菜单如下图

    pd.Series(["4 cups","1 cup","2 large","1
    can"],index=["Flour","Milk","Eggs","Spam"],dtype="object",name="Dinner")

    访问数据

    除了使用数据进行构建Series对象外,还可以采用下面的方法来获取index与values值

    >>> Dinner=pd.Series(["4 cups","1 cup","2 large","1 can"],index=["Flour","Milk","Eggs","Spam"],dtype="object",name="Dinner")
    #通过下标访问values的值
    >>> Dinner[3]
    '1 can'
    #通过属性访问index/values的值
    >>> Dinner.index
    Index(['Flour', 'Milk', 'Eggs', 'Spam'], dtype='object')
    >>> Dinner.values
    array(['4 cups', '1 cup', '2 large', '1 can'], dtype=object)

    数据运算

    当某个索引对应的数据进行运算以后,运算结果会替换原先的数据并且仍然对应着之前的索引

    >>> yunsuan=pd.Series([1,2,3,4,5])>>> yunsuan
    0    1
    1    2
    2    3
    3    4
    4    5
    dtype: int64
    >>> yunsuan*yunsuan
    0     1
    1     4
    2     9
    3    16
    4    25
    dtype: int64
    

    二维/表格DataFrame

          DataFrame是一个类似于二维数组或表格的对象。DataFrame不仅有行索引也同样有列索引。数据是可以有很多列的。

    创建对象

    pd.DataFrame(data=None,index=None,columns=None,dtype=None,copy=False)

    其中:data是存放的数据;index是数据对应的行索引值(默认是一个从0~N的索引);而columns为列索引;dtype表示存放数据的类型(如int32、bool等);copy默认的值为false

    练习:创建DataFrame如下图

    fruits=pd.DataFrame({"Apples":[30],"Bananas":[21]})
    >>> fruits
    Apples  Bananas
    0      30       21

    访问数据

    >>> element=fruits['Apples']
    # 查看返回结果的类型
    >>> type(element)
    <class 'pandas.core.series.Series'>
    # 得到的结果是一列Series对象
    >>> element
    0    30
    Name: Apples, dtype: int64

    增加数据

    >>> fruits['Orange']=[20]
    >>> fruits
    Apples  Bananas  Orange
    0      30       21      20

    删除数据

    >>> del fruits['Orange']
    >>> fruits
    Apples  Bananas
    0      30       21
    内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
    标签: