设为首页 加入收藏

TOP

Python基础教程之Python数据分析工具总结(一)
2019-04-01 00:08:46 】 浏览:48
Tags:Python 基础 教程 数据分析 工具 总结

常规版本的python需要在安装完成后另外下载相应的第三方库来安装库文件。而若安装的是Anaconda版本的Python,则不需要一个一个安装第三方库,可能已经同时安装了这些库。


Anaconda是专门应用于科学计算的Python版本。


Numpy库:表达N维数组的最基本的库。


Numpy库是专门为应用于严格的数据处理开发的,它提供了一个非常强大的N维数组对象array和实用的线性代数、傅里叶变换和随机数生成函数,可以存储和处理大型的矩阵,Scipymatplotlib,pandas库等均依赖于它。


① 安装Numpy库:pip install numpy ,集成安装方法(anaconda)或者文件安装方法(先从UCI页面搜索库,下载对应版本的文件,使用 pip install <文件名>进行安装)


② 多维数组:用array函数创建数组,array函数接收一切序列类型的对象(listtuple,其他数组)  import numpy as np


        A=np.array(列表、元组或数组)


       创建特殊函数:import numpy as np


                    B=np.ones(n,m)C=np.zeros(n,m) ,I=np.eye/identify(n)


SciPy库:提供了真正的矩阵,以及基于矩运算的对象和函数,Scipy包含的功能有最优化、线性代数、积分、插值、拟合、特殊函数、快速傅里叶变换、信息处理和图像处理、常微分方程求解和其他科学和工程常用的计算。


注意:Scipy库依赖于Numpy库,需先安装Numpy


 例:使用Scipy求解线性方程组的方法:


import scipy


from scipy import linalg


a=scipy.mat('[2 1 -5 1;1 -3 0 -6;0 2 -1 2;1 4 -7 6]')


b=scipy.mat('[8;9;-5;0]')


solve=linalg.solve(a,b)


print(solve)      #运行结果输出值矩阵


[ [3.]


[-4.]


[-1.]


[1.] ]


该方程的另一解为:使用LU求解多个线性方程


from numpy import *


import scipy.linalg as s1


A=array([[2,1,-5,1],[1,-3,0,-6],[0,2,-1,2],[1,4,-7,6]])


b=array([8,9,-5,0])


bi=b.reshape(-1,1)


[LU,piv]=s1.lu_factor(A)


print(LU,piv)


xi=s1.lu_solve((LU,piv),bi)


print(xi)


#得到运行结果:[[ 2.          1.         -5.          1.        ]


                           [ 0.5        -3.5         2.5        -6.5       ]


                            [ 0.5        -1.         -2.         -1.        ]


                           [ 0.         -0.57142857 -0.21428571 -1.92857143]]                [0 1 3 3]


[[ 3.]


 [-4.]


 [-1.]


 [ 1.]]


Scipy 中,分解LU的方法有两种:1.标准方法是scipy.linalg.lu 该方法返回三个矩阵L,U,P


2.方法lu_factorlu_solve结合起来使用,LU一起存储在n*n的数组中,存储序列矩阵P的信息只需要一个n整数向量即轴向量来完成。


 3.Matplotlib库:python的一个2D绘图库,它以各种硬拷贝格式和跨平台的交互式环境生成出版质量级别的图形。应用: 使用Matplotlib可以实现数据的可视化


  1:使用Matplotlib进行画图的一些基本代码:


iimport matplotlib.pyplot as plt


import numpy as np


x=np.linspace(0,10,1000)   #设置自变量格式 其中linspace(0,10,1000)表示x由平均分布在010之间的1000个点所组成


y=np.sin(x)+1    #设置因变量y


z=np.cos(x**2)+1       #设置另一因变量z


plt.figure(figsize=(8,4))     #设置图像大小


plt.plot(x,y,label="sinx+1",color='red',linewidth=2)    #作图(x,y,设置标签格式


plt.plot(x,z,label="cosx^2+1")  #作图(x,z


plt.xlabel('Time(s)')  #设置x轴名称


plt.ylabel('Volt')      #设置y轴名称


plt.title('A simple Example')   #设置表格标题


plt.ylim(0,2.2)      #显示的y轴范围


plt.legend()   #显示图例


plt.show()      #显示作图结果


 运行上述代码,可以得到如???图:(注意:该图可以保存为图片格式,保存的图片质量几乎满足各种版本要求)


Python基础教程之Python数据分析工具总结


 4.pandas 库:是包含高级的数据结构和精巧的分析工具,支持SQL的数据增、删、改、查操作,并包含很多处理函数。


 1Pandas的数据结构series


 Series 由一组数据(各种Numpy数据类型)以及一组与之有关的数据标签(即索引
编程开发网

首页 上一页 1 2 3 下一页 尾页 1/3/3
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇Python科学计算学习之高级数组 下一篇Python基础教程之数组类型

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容:

array(4) { ["type"]=> int(8) ["message"]=> string(24) "Undefined variable: jobs" ["file"]=> string(32) "/mnt/wp/cppentry/do/bencandy.php" ["line"]=> int(214) }