Pandas之入门

Posted lishi-jie

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Pandas之入门相关的知识,希望对你有一定的参考价值。

pandas入门

由于最近公司要求做数据分析,pandas每天必用,只能先跳过numpy的学习,先学习大Pandas库
Pandas是基于Numpy构建的,让以Numpy为中心的应用变得更加简单

pandas的数据结构介绍

  • Series

    • 由一组数据以及一组数据标签即索引组成
    import pandas as pd
    from pandas import Series,DataFrame
    
    obj = Series([4,7,-5,3])
    # 索引在左边,值在右边,默认从0开始
    obj
    0    4
    1    7
    2   -5
    3    3
    dtype: int64
    
    
    # 制定索引
    obj2 = Series([4,7,-5,3],index = [‘a‘,‘b‘,‘c‘,‘d‘])
    obj2
    a    4
    b    7
    c   -5
    d    3
    dtype: int64
    # 查看索引
    obj2.index
    Index([‘a‘, ‘b‘, ‘c‘, ‘d‘], dtype=‘object‘)
    
    # 查询
    obj2[[‘a‘,‘b‘,‘c‘]]
    a    4
    b    7
    c   -5
    dtype: int64
    
    obj2[obj2>0]
    a    4
    b    7
    d    3
    dtype: int64
    • 还可以直接看成一个关系型字典
    sdata = {‘ke‘:35000,‘text‘:70000,‘orgen‘:16000}
    obj3 = Series(sdata)
    obj3
    
    ke       35000
    text     70000
    orgen    16000
    dtype: int64
    
    keys = [‘ke‘,‘text‘,‘orgen‘,‘xu‘]
    obj4 = Series(sdata, index=keys)
    obj4
    ke       35000.0
    text     70000.0
    orgen    16000.0
    xu           NaN
    dtype: float64
    • 检测缺失值的重要两个函数 isnull和notnull
    obj4[obj4.isnull()]
    xu   NaN
    dtype: float64
    
    obj4[obj4.notnull()]
    ke       35000.0
    text     70000.0
    orgen    16000.0
    dtype: float64
    • Series本身和索引都有一个name属性
    # 可以理解成对象名称
    obj4.name = ‘pop‘
    # 对象的索引的名称
    obj4.index.name = ‘state‘
    obj4
    
    state
    ke       35000.0
    text     70000.0
    orgen    16000.0
    xu           NaN
    Name: pop, dtype: float64
    
    # Series的索引可以就地修改
    obj4.index = [‘new_ke‘,‘new_text‘,‘new_orgen‘,‘new_xu‘]
    new_ke       35000.0
    new_text     70000.0
    new_orgen    16000.0
    new_xu           NaN
    Name: pop, dtype: float64
  • DataFrame
    • DataFrame是一个表格型数据结构,最常用的是直接传入一个由等长列表或者是Numpy数组组成的字典
    data = {‘state‘:[‘oh‘,‘oh‘,‘vad‘,‘vad‘],
            ‘yead‘:[2000,2001,2002,2003],
            ‘pop‘:[1.5,1.7,3.6,2.4]
        }
    
    frame = DataFrame(data)
    # 自动有序排列
        yead    state   pop
    0   2000    oh  1.5
    1   2001    oh  1.7
    2   2002    vad 3.6
    3   2003    vad 2.4
    
    # 如果传入的列在数据中找不到,就产生NaN
    DataFrame(data,columns=[‘yar‘,‘yead‘])
        yar yead
    0   NaN 2000
    1   NaN 2001
    2   NaN 2002
    3   NaN 2003

以上是关于Pandas之入门的主要内容,如果未能解决你的问题,请参考以下文章

Pandas高级数据分析快速入门之五——机器学习特征工程篇

Pandas高级数据分析快速入门之五——机器学习特征工程篇

Pandas高级数据分析快速入门之四——数据可视化篇

Pandas高级数据分析快速入门之六——机器学习预测分析篇

Pandas高级数据分析快速入门之三——数据挖掘与统计分析篇

jupyter入门之pandas