• 绘图 Matplotlib Numpy Pandas


    丈夫气力全,一个拟当千。猛气冲心出,视死亦如眠。

    绘图 Matplotlib
    可视化是在整个数据挖掘的关键辅助工具,可以清晰的理解数据,从而调整我们的分析方法。

    能将数据进行可视化,更直观的呈现
    使数据更加客观、更具说服力

    matplotlib.pyplot模块
    import matplotlib.pyplot as plt

    构造数据
    实现绘图
    创建画布
    绘制图像
    显示图像
    基本代码
    创建画布:plt.figure()
    figsize:指定图的长宽
    dpi:图像的清晰度
    返回fig对象
    绘制图像:plt.plot()
    显示图像:plt.show()

    其他功能 修改刻度
    plt.xticks()
    plt.yticks()
    标题
    plt.title(文字,fontsize=大小)
    网格
    plt.grid(True,alpha=透明度,linestyle=样式)
    保存 .savefig(文件名)

    常见图像
    折线图 散点图 柱状图 饼图 直方图
    折线图
    特点:像是数据的变化趋势 反映事物的变化情况(变化)
    关键词:变化
    api:plt.plot(x,y)

    散点图
    特点:判断变量之间是否存在数量关联趋势,展示离群点(分布规律)
    关键词:规律
    api:plt.scatter(x,y)

    柱状图
    特点:展示各个数据的大小,比较数据差别
    关键词:比大小
    api:plt.bar(x, width, align='center', **kwargs)
    Parameters:
    x : 需要传递的数据

    width : 柱状图的宽度

    align : 每个柱状图的位置对齐方式
    {‘center’, ‘edge’}, optional, default: ‘center’

    **kwargs :
    color:选择柱状图的颜色

    直方图
    特点:绘制连续性的数据展示一组或者多组数据的分布状况
    关键词:统计分组,分布
    api:matplotlib.pyplot.hist(x, bins=None)
    x : 需要传递的数据
    bins : 组距

    饼图
    特点:分类数据的占比情况()
    关键词:占比
    api:plt.pie(x, labels=,autopct=,colors)
    x:数量,自动算百分比 列表
    labels:每部分名称 列表
    autopct:占比显示指定%1.2f%% 字符串 .2表是几位
    colors:每部分颜色

    绘制
    准备数据
    绘制图像
    创建画布
    绘制图像
    显示图像


    Numpy开源的python科学计算库 比list(列表)更具效率
    快速处理任意维度的数组,支持常见的数组和矩阵操作
    矩阵:二维数组
    使用 ndarray(多维度数组) 对象来处理多维数组 它描述了-相同类型-的“items”的集合

    内存块分格
    ndarray 数值类型相同,可以直接读取
    list 数据类型不同,读取地址在读取数据
    并行化计算 类似GPU
    内置了并行运算功能,系统有多核心时,做某种计算,会自动做并行计算
    底层代码,效率远高于纯python代码
    底层用c编写

    n维数组 属性,形状,类型

    ndarray 属性
    对象.shape:数据的形状
    对象.ndim:数据的维度
    对象.size:数据的个数
    对象.dtype:数据的类型
    int32,int64,float32,float64,uint8(0,255)
    对象.itemsize:一个元素的长度

    创建数组
    .array([[]],dtype=类型(numpy.int32)/"类型")

    基本操作
    生成数组
    生成0-1数组
    从现有数组生成
    生成固定范围数组
    生成随机数组

    生成数组的方法
    import numpy as np
    0和1的数组
    np.ones(shape, dtype)
    np.ones_like(a, dtype)
    np.zeros(shape, dtype)
    np.zeros_like(a, dtype)

    从现有数组生成
    np.array(object, dtype)

    np.asarray(a, dtype)

    a = np.array([[1,2,3],[4,5,6]])
    # 从现有的数组当中创建
    a1 = np.array(a)---深拷贝
    # 相当于索引的形式,并没有真正的创建一个新的
    a2 = np.asarray(a)---浅拷贝

    生成固定范围的数组
    等差数列

    np.linspace (start, stop, num, endpoint)

    创建-等差-数组 — 指定数量
    参数:
    start:序列的起始值
    stop:序列的终止值
    num:要生成的等间隔样例数量,默认为50
    endpoint:序列中是否包含stop值,默认为ture

    np.arange(start,stop, step, dtype)

    创建等差数组 — 指定步长
    参数
    step:步长,默认值为1

    等比数列

    np.logspace(start,stop, num)

    参数:
    num:要生成的等比数列数量,默认为50
    不传值默认base=10

    生成随机数组
    np.random模块

    正态分布
    --------------------


    --------------------

    Pandas (面板数据分析)数据处理的库
    -以numpy为基础 借np在计算方面性能高的优势
    --基于matplotlib,能够简便的画图
    ---有独特的数据格式

    有良好的图表可读性
    处理数据
    读取文件
    封装了matplotlib,numpy的画图和计算

    pandas的数据结构
    1.series
    由一组数据和与之相关的索引俩部分构成
    创建
    import pandas as pd

    属性

    2.DataFrame
    创建
    属性


    数据运算
    DataF
    直接运算
    对象【列名】+1---加1
    对象【】.add(1)加1
    对象【】.sub(1)--减1

    逻辑运算
    布尔索引
    &---and
    |---or

    对象[对象[].条件 逻辑运算符 对象[].条件]

    逻辑运算函数
    query(expr)
    expr查询字符串

    isin([])在一个区间

    统计
    对象.describe() --描述(行数,最大,最小,中位数,四分之三位数..)
    abs--绝对值
    prod--求积
    idmax--最大值索引
    argmax--最大值下表-np
    mode--众数
    max--最大值
    --axis--轴向 -参数
    std--标准差
    median 中位数


    累计统计函数
    cumsum()-前n个数的和

    排序 .sort_index()
    去重 .unique()
    直方图-hest()
    .plot(figsize = (画布大小))--画图

    自定义运算
    对象.apply(func,axis = 0)
    def func():
    执行内容
    return ..

    匿名函数
    对象.apply(lambda x)


    文件读取和操作
    文本文件:--csv,--json,html,local clipboard(剪切板)
    二进制文件:Excel,--HDF5,SAS
    数据库:SQL
    读取read_文件格式
    存储,写 to_文件格式
    读取文件
    read_csv69:39 2019/11/1269:39 2019/11/125
    pands.read_csv(路径,usecols=[],stp=',')
    filepath_or_buffer:文件路径
    sep :分隔符,默认用","隔开
    usecols:指定读取的列名,列表形式

    to_csv
    DataFrame.to_csv(path_or_buf=None, sep=', ’, columns=None, header=True, index=True, mode='w', encoding=None)

    path_or_buf :文件路径
    sep :分隔符,默认用","隔开
    columns :选择需要的列索引,列表
    header :boolean or list of string, default True,是否写进列索引值
    index:是否写进行索引
    mode:'w':重写, 'a' 追加

  • 相关阅读:
    apache 泛域名配置
    使用Innosetup制作安装包的一些技巧
    以前编写的inno setup脚本,涵盖了自定义安装界面,调用dll等等应用 (转)
    一个比较完整的Inno Setup 安装脚本(转)
    C++(MFC)中WebBrowser去除3D边框的方法(实现IDocHostUIHandler接口)控制 WebBrowser 控件的外观和行为
    computer repair services in Hangzhou
    INNO SETUP 5.5.0以上版本中文语言包
    洛谷P1115 最大子段和【dp】
    洛谷P1996 约瑟夫问题【队列】
    数据结构实验病毒感染检测问题(C++)
  • 原文地址:https://www.cnblogs.com/mujun95/p/11844839.html
Copyright © 2020-2023  润新知