python--numpy模块、spicy模块、 matplotlib模块
一:numpy模块
ndarray:存储单一数据类型的多维数组
ufunc:能够对数组进行处理的函数(universal function object)
#numpy 中arange用法,指定开始值/终止值/步长来创建一维数组数组,但是数组不包括终值。
arange_array=np.arange(1,2,0.1)
re_arange_array=arange_array.reshape(2,5)#使用reshape重新定义数组的维度或者数组的大小
print "arange_array is array,it's %s " % arange_array
print "re_arange_array is:%s" % re_arange_array
#linspace函数通过指定开始值、终值和元素个数来创建一维数组,可以通过endpoint关键字指定
#是否包括终值,缺省设置是包括终值:
linspace_array=np.linspace(0, 1, 12)#创建的是等差数列!
print "linspace_array is: %s" % linspace_array
#logspace创建等比数列,产生起始值10^起始值,到10^终止值,n个值的一维数组
logspace_array=np.logspace(0,2,30)
print "logspace array is: %s" % logspace_array
def fun2(i,j):
return (i+1)*(j+1)
b=np.fromfunction(fun2,(9,9))
#fromfunction从函数创建数组,自定义函数,从函数中创建数组;
#frompyfunc的调用格式为frompyfunc(func, nin, nout),nin是此函数的输入参数的个数,nout是此函数的返回值的个数。
print 'b is:%s' %b
Data type objects (dtype) and 结构数组
数据类型(data type object, ie. numpy.dtype的实例)描述的是array对象怎样解析内存中的固定大小的内存段。它描素了数据的一下几个方面:
- 数据的类型(integer, float, Python object, etc.)
- 数据的大小(how many bytes is in e.g. the integer)
- 二进制位的存储顺序(little-endian or big-endian)
- 如果数据类型(data type)是一条记录,即其他数据类型的组合(e.g., describing an array item consisting of an integer and a float),这和C语言里面的struct类似。
- 记录的各个数据的名称是什么,怎么获取这个子数据。
- 每个子数据的的类型是什么。
- 每个子数据都使用哪一部分内存。
- 如果数据是一个子数组,它的形状是什么。

import numpy as np;
persontype=np.dtype({ 'names':['name','age','weight'], 'formats':['S32','i','f']})
a = np.array([("zhuang",32,75.5),("wang",24,65.2)],dtype=persontype)
print a[1]['name']
print a.strides
扩展:常用tile函数和repeat函数扩展numpy模块
1:numpy.tile(A,B)函数:重复A,B次,这里的B可以时int类型也可以是元组类型
>>> import numpy
>>> numpy.tile([0,0],5)#在列方向上重复[0,0]5次,默认行1次
array([0, 0, 0, 0, 0, 0, 0, 0, 0, 0])
>>> numpy.tile([0,0],(1,1))#在列方向上重复[0,0]1次,行1次
array([[0, 0]])
>>> numpy.tile([0,0],(2,1))#在列方向上重复[0,0]1次,行2次
array([[0, 0],
[0, 0]])
>>> numpy.tile([0,0],(3,1))
array([[0, 0],
[0, 0],
[0, 0]])
>>> numpy.tile([0,0],(1,3))#在列方向上重复[0,0]3次,行1次
array([[0, 0, 0, 0, 0, 0]])
>>> numpy.tile([0,0],(2,3))<span style="font-family: Arial, Helvetica, sans-serif;">#在列方向上重复[0,0]3次,行2次</span>
array([[0, 0, 0, 0, 0, 0],
[0, 0, 0, 0, 0, 0]])
2:repeat(A):重复A次 repeat([A,B]):对应重复A次,B次
>>> from numpy import *
>>> repeat(7.,4)
array([ 7., 7., 7., 7.])
>>> a=array([10,20])
>>> a.repeat([3,2])
array([10, 10, 10, 20, 20])
>>> repeat(a,[3,2])
array([10, 10, 10, 20, 20])
>>> a=array([[10,20],[30,40]])
>>> a.repeat([3,2],axis=0)
array([[10, 20],
[10, 20],
[10, 20],
[30, 40],
[30, 40]])
>>> a.repeat([3,2],axis=1)
array([[10, 10, 10, 20, 20],
[30, 30, 30, 40, 40]])
>>>
3:sum函数:
sum(a,axis=0):普通的相加
sum(axis=1) :将一个矩阵的每一行向量相加
4:argsort函数:返回排序后元素在原对象中的下标,属于numpy中的函数
区别于sort函数和sorted函数
(1)、sort 只是list类型的内建函数,对其他非列表型序列不适用。
(2)、sorted是所有类型的内建函数 ,返回排序后的对象,原对象不改变。进阶:sorted(a,key=...,reversed=True)
a=array([(5,4,3,2,6),(7,8,0,1,9)])
>>> a
array([[5, 4, 3, 2, 6],
[7, 8, 0, 1, 9]])
>>> a.argsort()
array([[3, 2, 1, 0, 4],
[2, 3, 0, 1, 4]], dtype=int64)
5:zeros:创建0矩阵
二:spicy模块
python--numpy模块、spicy模块、 matplotlib模块的更多相关文章
- windows_64下python下载安装Numpy、Scipy、matplotlib模块
本文应用的python3.6.3及其对应的Numpy.Scipy.matplotlib计算模块的cp36版本,其中Numpy是需要MKL版本的Numpy,这是后续安装Scipy的需要(本机系统win7 ...
- windows下python安装Numpy、Scipy、matplotlib模块(转载)
python下载链接 Numpy下载链接 python中Numpy包的安装及使用 Numpy包的安装 准备工作 Python安装 pip安装 将pip所在的文件夹添加到环境变量path路径中 ...
- logging,numpy,pandas,matplotlib模块
logging模块 日志总共分为以下五个级别,这五个级别自下而上进行匹配debug->info->warning->error->critical,默认的最低级别warning ...
- python 爬虫与数据可视化--matplotlib模块应用
一.数据分析的目的(利用大数据量数据分析,帮助人们做出战略决策) 二.什么是matplotlib? matplotlib: 最流行的Python底层绘图库,主要做数据可视化图表,名字取材于MATLAB ...
- windows下python安装Numpy、Scipy、matplotlib模块
来源http://blog.csdn.net/Katrina_ALi/article/details/64922107 http://blog.csdn.net/qq_16633405/article ...
- numpy+pandas+ matplotlib模块(day18)
目录 numpy模块 二维数组 numpy数组的属性 T 数组的装置 dtype 数组元素的数据类型 size 数组元素的个数 ndim 数组的维数 shape数组的维度大小 astype 类型转换 ...
- Windows python 安装 nNumpy、Scipy、matplotlib模块
折腾了 很久,总结一些. 首先如果python 是64位,安装32位的numpy ,Scipy,或者matplotlib 模块. 会出现很多问题. 比如当你 在python 导入 Numpy 时,导入 ...
- Python之matplotlib模块安装
numpy 1.下载安装 源代码 http://sourceforge.net/projects/numpy/files/NumPy/ 安装 python2.7 setup.py install 2. ...
- Python中matplotlib模块解析
用Matplotlib绘制二维图像的最简单方法是: 1. 导入模块 导入matplotlib的子模块 import matplotlib.pyplot as plt import numpy as ...
- day18-常用模块III (numpy、pandas、matplotlib)
目录 numpy模块 创建矩阵 获取矩阵的行列数 切割矩阵 矩阵元素替换 矩阵的合并 通过函数创建矩阵 矩阵的运算 矩阵的点乘与转置 矩阵的逆 矩阵的其他操作 numpy.random生成随机数 pa ...
随机推荐
- Solaris磁盘配额
磁盘配额:就跟汽车行驶速度一样.我们设定. 添加rq标志,使其支持配额功能. 命令:quota ,打开就是quotaon 对ZFS文件系统进行设置配额: 当设置quota=none 则可以取消配额设置 ...
- CSS3中的动画效果-------Day72
还记得么,在前面也曾实现过"仅仅用css让div动起来",还记得当时是怎么实现的么,是的,transition,针对的也比較局限,仅仅有旋转角度啊,长宽啊之类的,所以说,与其说是动 ...
- PJSIP 调用的GUID库
PJSIP库产生随机序列串用到GUID库,针对不同的平台使用的方式不同:Windows平台下使用的是Windows系统API CoCreateGuid,在方法 pj_generate_unique_s ...
- MGTemplateEngine 模版发动机简单使用
https://github.com/nxtbgthng/MGTemplateEngine MGTemplateEngine 模版引擎 MGTemplateEngine比較象 PHP 中的 Smart ...
- 虚拟网卡TUN/TAP 驱动程序设计原理
昨天韦哥写了<Linux下Tun/Tap设备通信原理>一文,只提到了两个使用Tun的用户进程之间的通信路径,并没有说明Tun虚拟网卡驱动是如何实现的,而正好看到了这里的一篇讲解这方面的文章 ...
- 个人开发者帐号--我是如何实现在另一台mac上真机调试的
本文转载至 : http://blog.csdn.net/chenyong05314/article/details/8689534 注:本人有一台mac电脑,之前申请开发者帐号的时候直接就是在这 ...
- EasyNVR将如何能够把内网各种各样的监控摄像机对接到公网云平台
需求 传统监控行业里面,监控客户端.服务器端,设备端都在一个内网里面,搞个电脑开个监控终端,顶多再配一个NVR做一做摄像机的录像存储.上个电视墙(个人感觉这功能除了面子工程,没啥实用的,还特费电!), ...
- Win10升级.NET Framework 3.5或2.0遇到错误0x800f081f
具体方法如下: 1.将WIN10安装光盘ISO文件加载到虚拟光驱中. 2.WIN键+R键一起按,输入CMD后回车. 3.在CMD的命令行窗口里输入: cd C:Windowssystem32 跳转到s ...
- Java类加载器(死磕 1-2)
Java类加载器( CLassLoader ) 死磕 1.2: 导入 & 类加载器分类 本小节目录 1.导入 1.1. 从class文件的载入开始 1.2. 什么是类加载器 2. JA ...
- linux shell执行远程计算机上的命令或者脚本(ssh)
大数据平台下经常建立设计多个节点的集群需要统一部署,这就设计到守护进程或者部署脚本在不同节点执行,如果能在master机器上,统一执行脚本,一次性启动整个集群的服务,感觉很nice.因为,分享如下内容 ...