• Pandas数据分析 (一)


    Series 和 DataFrame

    Pandas库基本运用

    •   Series 包含一维索引的一组数据

    •   DataFrame 包含 index 和 column 两个轴

    •   Panel 一种三维数据容器

    import pandas as pd
    import numpy as np
    from pandas import Series, DataFrame

    Series

    # 1. 创建 Series 对象,从列表创建
    s1 = pd.Series([100, 78, 59, 63])
    # values 和 index 属性可以得到Series的数据和索引
    s1.values
    s1.index
    
    # 2. 创建Series对象,从ndarry创建
    # 指定的index必须与data长度相等
    pd.Series(np.random.randn(5), index=['a', 'b', 'c', 'd', 'e'])
    
    # 3. 从字典创建
    d = {'a':0.12, 'b':0.33, 'c':-0.15}
    pd.Series(d)
    
    # 4. 将标量传入 data后,所有的索引对应的值都将会是该标量
    pd.Series(2, index=['c', 's'])
    View Code

      series的算术运算

       Series 在算术运算中 会自动对齐 不同索引的数据

    s1 = pd.Series([1, 2, 4, 5], index=['a', 'b', 'c', 'd'])
    s2 = pd.Series([2, 3, 5, 6], index=['c', 'a', 'b', 'd'])
    s1 + s2
    View Code

      唯一值个数统计

       用 unique() 函数,其返回结果为一个数组,包含Series去重后的元素 跟 unique() 函数,相似的另一个函数是 value_counts(), 它可以查看每一个唯一元素频数

    s3 = pd.Series(data=['a', 'a', 'b', 'b'])
    s3.unique()
    View Code

      转换数据类型  

       astype()函数可以转换数据类型

    s4 = pd.Series(data=['1.3', '2.2'])
    s5 = s4.astype('float32')

    DataFrame

     1 # 1. DataFrame的创建
     2 d = {'One': pd.Series([1., 2., 3.], index=['a', 'b', 'c']), 'two': pd.Series([1., 2., 4.], index=['a', 'b', 'd'])}
     3 df = pd.DataFrame(d)
     4 
     5 d = pd.DataFrame(d, index=['a', 'b'])
     6 
     7 d = pd.DataFrame(d, index=['a', 'b'], columns=['two', 'three'])
     8 # 通过 pd.index 和 pd.columns 可以快速得到DataFrame对象所有的索引和列名
     9 print(df.index)
    10 print(df.columns)
    11 
    12 # 2. 筛选
    13 df[df['One'] > 1]
    14 
    15 df.loc['a']  # 通过标签选取某一行
    16 df.loc[['a', 'b'], 'One']
    17 df.loc[['a', 'd'], 'two']
    18 df.loc[:, 'One']
    View Code

    Panel

    1 pnl = pd.Panel([[[10000,20000],[20000,23000],[40000,34000]],[[2,1],[0,0],[3,4]]], items=['营业额', '出差次数'], major_axis=['1月','2月','3月'], minor_axis=['张三','李四'])
    View Code
  • 相关阅读:
    用户控件JS问题
    jQuery formValidator自定义函数扩展功能
    IAR使用notice
    C++入门学习
    解决Myeclipse闪退问题
    Cortex_M3——存储器系统学习笔记
    加密算法中涉及C/C++总结
    学习笔记——应用密码学基础
    keil软件相关问题汇总
    STM32知识点纪要
  • 原文地址:https://www.cnblogs.com/xmdykf/p/12203301.html
Copyright © 2020-2023  润新知