python(四):numpy快速数据处理

来源:互联网 发布:python基础教程在线 编辑:程序博客网 时间:2024/06/05 19:09

NumPy为python提供了矩阵运算能力。
ndarrray对象:存储单一数据类型的多维数组

(1)函数库的导入

import numpy as np

(2)创建数组

 a=np.array([1,2,3,4],dtype=np.float)  #浮点型数组元素b=np.array((5,6,7,8),dtype=np.complex)   #复数型型数组元素c=np.array([[1,2,3,4],[5,6,7,8]])

数组大小

a.shapeb.shapec.shape 

改变数组尺寸创建新数组

d=a.reshape((2,2))

注意:此时a和d共享内存,改变任意一个元素,两个数组相应位置发生改变
创建数组的函数:

np.arange(0,1,0.1)  #创建0,1之间间隔为0.1的数组np.linespace(0,1,10)#创建0,1之间的11个数np.linespace(0,1,10,endpoint=False)#创建0,1之间的10个数,不包含终点np.logspace(0,2,10)#与linespace相似np.empty((2,3),np.int) #创建2*3的int型空矩阵np.zeros(4,np.float)#创建浮点数型的零矩阵np.ones(4,np.float)#创建浮点数型的1矩阵#ones_like(a)与ones(a.shape,a.dtype)效果一样np.fromfunction(func,(sahpe))#第一个为计算每个数组元素的函数,第二个为数组大小

产生随机数:

np.random.rand(10) #产生10个0,1之间的随机数注意:除了numpy之外,python本身的随机数模块可产生随机数import randomrandom.random(10) #产生10个0,1之间的随机数random.randint(1,10) #产生(1,10)之间的随机整数random.choice(['a','b','c']) #从a,b,c之间随机产生一个

对于python中的吧随机数模块,有一篇文章说得更全一点:http://www.iplaypy.com/module/random.html
Python标准库中的random函数,可以生成随机浮点数、整数、字符串,甚至帮助你随机选择列表序列中的一个元素,打乱一组数据等。
random模块重要函数:
1 )、random() 返回0<=n<1之间的随机实数n;
2 )、choice(seq) 从序列seq中返回随机的元素;
3 )、getrandbits(n) 以长整型形式返回n个随机位;
4 )、shuffle(seq[, random]) 原地指定seq序列;
5 )、sample(seq, n) 从序列seq中选择n个随机且独立的元素;

random.random()函数是这个模块中最常用的方法了,它会生成一个随机的浮点数,范围是在0.0~1.0之间。

random.uniform()正好弥补了上面函数的不足,它可以设定浮点数的范围,一个是上限,一个是下限。

random.randint()随机生一个整数int类型,可以指定这个整数的范围,同样有上限和下限值,python random.randint。

random.choice()可以从任何序列,比如list列表中,选取一个随机的元素返回,可以用于字符串、列表、元组等。

random.shuffle()如果你想将一个序列中的元素,随机打乱的话可以用这个函数方法。

random.sample()可以从指定的序列中,随机的截取指定长度的片断,不作修改。

原创粉丝点击