一: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对象怎样解析内存中的固定大小的内存段。它描素了数据的一下几个方面:

  1. 数据的类型(integer, float, Python object, etc.)
  2. 数据的大小(how many bytes is in e.g. the integer)
  3. 二进制位的存储顺序(little-endian or big-endian)
  4. 如果数据类型(data type)是一条记录,即其他数据类型的组合(e.g., describing an array item consisting of an integer and a float),这和C语言里面的struct类似。
  1. 记录的各个数据的名称是什么,怎么获取这个子数据。
  2. 每个子数据的的类型是什么。
  3. 每个子数据都使用哪一部分内存。
  1. 如果数据是一个子数组,它的形状是什么。

  

 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模块的更多相关文章

  1. windows_64下python下载安装Numpy、Scipy、matplotlib模块

    本文应用的python3.6.3及其对应的Numpy.Scipy.matplotlib计算模块的cp36版本,其中Numpy是需要MKL版本的Numpy,这是后续安装Scipy的需要(本机系统win7 ...

  2. windows下python安装Numpy、Scipy、matplotlib模块(转载)

    python下载链接     Numpy下载链接 python中Numpy包的安装及使用 Numpy包的安装 准备工作 Python安装 pip安装 将pip所在的文件夹添加到环境变量path路径中 ...

  3. logging,numpy,pandas,matplotlib模块

    logging模块 日志总共分为以下五个级别,这五个级别自下而上进行匹配debug->info->warning->error->critical,默认的最低级别warning ...

  4. python 爬虫与数据可视化--matplotlib模块应用

    一.数据分析的目的(利用大数据量数据分析,帮助人们做出战略决策) 二.什么是matplotlib? matplotlib: 最流行的Python底层绘图库,主要做数据可视化图表,名字取材于MATLAB ...

  5. windows下python安装Numpy、Scipy、matplotlib模块

    来源http://blog.csdn.net/Katrina_ALi/article/details/64922107 http://blog.csdn.net/qq_16633405/article ...

  6. numpy+pandas+ matplotlib模块(day18)

    目录 numpy模块 二维数组 numpy数组的属性 T 数组的装置 dtype 数组元素的数据类型 size 数组元素的个数 ndim 数组的维数 shape数组的维度大小 astype 类型转换 ...

  7. Windows python 安装 nNumpy、Scipy、matplotlib模块

    折腾了 很久,总结一些. 首先如果python 是64位,安装32位的numpy ,Scipy,或者matplotlib 模块. 会出现很多问题. 比如当你 在python 导入 Numpy 时,导入 ...

  8. Python之matplotlib模块安装

    numpy 1.下载安装 源代码 http://sourceforge.net/projects/numpy/files/NumPy/ 安装 python2.7 setup.py install 2. ...

  9. Python中matplotlib模块解析

    用Matplotlib绘制二维图像的最简单方法是: 1.  导入模块 导入matplotlib的子模块 import matplotlib.pyplot as plt import numpy as ...

  10. day18-常用模块III (numpy、pandas、matplotlib)

    目录 numpy模块 创建矩阵 获取矩阵的行列数 切割矩阵 矩阵元素替换 矩阵的合并 通过函数创建矩阵 矩阵的运算 矩阵的点乘与转置 矩阵的逆 矩阵的其他操作 numpy.random生成随机数 pa ...

随机推荐

  1. ubuntu环境准备

    一. 桌面方面看起来比较不爽,12的版本用起更不习惯,决定改成命令行登陆 a. vi  /ect/default/grub 文件 b. 修改成第二个红框的情况 c. 执行update-grub命令 d ...

  2. Logical Volume Manager (Linux)

    http://en.wikipedia.org/wiki/Logical_Volume_Manager_(Linux) Logical Volume Manager (Linux) From Wiki ...

  3. 日常沟通的 3 种模式zz

    一.日常沟通的 3 种模式 根据NLP (Neuro-Linguistic Programming,神经语言程序学),日常沟通的 3 种模式分别是:上堆.下切和平行,它们是什么意思呢? 1.上堆 意思 ...

  4. 成长为 iOS 大 V 的秘密

    成长为 iOS 大 V 的秘密   前言 毫不谦虚地说,我是国内 iOS 开发的大 V.我从 2011 年底开始自学 iOS 开发,经过 3 年时间,到 2014 年底,我不但写作了上百篇 iOS 相 ...

  5. JavaScript读书笔记(3)-操作符、语句和函数

    1.  操作符 (1)       一元操作符 前置递增和递减操作符,变量的值都是在语句被求值以前改变的:后置相反 (2)       位操作符 在ECMAScript中,对数值进行位操作时,会发生以 ...

  6. windows常用快捷键(转载)

    f1 显示当前程序或者windows的帮助内容. f2 当你选中一个文件的话,这意味着“重命名” f3 当你在桌面上的时候是打开“查找:所有文件” 对话框 f10或alt 激活当前程序的菜单栏 win ...

  7. 相似进程死掉Process com.midea.mmp2 died.

    此异常查到网上有一篇不错的文章例如以下: 08:56:03,273 INFO – 运行Do func=[GetSeqNo] keyNam=[keynam];KeyVal=[PRYPAYBILSYSTR ...

  8. 使用Primose方式解决异步编程回调的一些问题--animate动画的例子

    function animate(dis, time) { var def = $.Deferred(); $('.boll') .animate({ left: dis + 'px' }, time ...

  9. SecureCRT中使用VBs脚本自动telnet登陆

    查看SecureCRT帮助文档: Help-> Help Topics->Scripting -> Script Objects Reference -> Session Ob ...

  10. 【Effective C++】设计与声明

    条款18:让接口容易被正确使用,不易被误用 1,好的接口很容易被正确使用,不容易被误用.你应该在你的所有接口中努力达成这些性质. 2,“促进正使用”的办法包括接口的一致性,以及与内置类型的行为兼容. ...