np.random.rand()生成0-1的随机数
import numpy as np
x = np. random. rand( )
y = np. random. rand( 2 )
ya = np. random. rand( 2 ) * 5
z = np. random. rand( 2 , 3 )
za = np. random. rand( 2 , 3 ) * 10
print ( '无参数' , x)
print ( '一维数组' , y)
print ( '改变数值范围的一维数组' , ya)
print ( '二维数组' , z)
print ( '改变数值范围的二维数组' , za)
结果
无参数 0.7391395928409248
一维数组 [0.00565705 0.92848076]
改变数值范围的一维数组 [0.9262947 4.88632586]
二维数组 [[0.41234418 0.42370892 0.85567657]
[0.80341292 0.08865113 0.9045992 ]]
改变数值范围的二维数组 [[0.12050124 4.78838778 7.29748695]
[8.46214143 4.32422204 2.98549951]]
numpy.histogram2d 计算两个数据样本的二维直方图。 numpy.histogram2d(x,y,bins = 10,range = None,normed = None,weights = None,density = None )
参数:
x : array_like,shape(N,)
包含要进行直方图的点的x坐标的数组。
y : array_like,shape(N,)
包含要进行直方图的点的y坐标的数组。
bin : int 或array_like或[ int ,int ] 或[ array,array] ,可选
如果是int ,则为两个维度的bin 数(nx = ny = bin )。
如果是array_like,则为两个维度的bin 边缘(x_edges = y_edges = bin )。
如果[ int ,int ] ,则每个维度中的bin 数(nx,ny = bin )。
如果[ array,array] ,则每个维度中的bin 边缘(x_edges,y_edges = bin )。
组合[ int ,array] 或[ array,int ] ,其中int 是bin 和array的数量是bin 边缘。
range : array_like,shape(2 , 2 ),可选
沿着每个维度仓的最左和最右边缘(如果不是在明确指定仓参数): 。超出此范围的所有值都将被视为异常值,而不会在直方图中计算。[ [ xmin, xmax] , [ ymin, ymax] ]
密度 : bool ,可选
如果为False ,则默认值返回每个bin 中的样本数。如果为True ,则返回bin 处的概率密度函数 。bin_count / sample_count / bin_area
normed : bool ,可选
密度参数的别名,其行为相同。为避免与破坏的标准论证混淆histogram, 应优先考虑密度。
权重 : array_like,shape(N,),可选
w_i衡量每个样本的一系列值。如果标准为True ,则权重标准化为1 。如果normed为False ,则返回的直方图的值等于属于落入每个bin 的样本的权重之和。( x_i, y_i)
返回:
H : ndarray,形状(nx,ny)
样本x和y的二维直方图。x 中的值沿第一维直方图,y中的值沿第二维直方图。
xedges : ndarray,shape(nx + 1 ,)
沿第一维度的箱边缘。
yedges : ndarray,shape(ny + 1 ,)
bin 沿第二维边缘。
numpy.meshgrid(* xi,** kwargs )
numpy. meshgrid(* xi,** kwargs )
从坐标向量返回坐标矩阵。
在给定一维坐标数组x1,x2,. . . ,xn的情况下,使ND坐标数组用于ND网格上的ND标量/ 矢量场的矢量化评估。
版本1.9 中更改:允许1 - D和0 - D情况。
参数:
x1,x2,. . . ,xn : array_like
表示网格坐标的一维数组。
索引 indexing : { 'xy' ,'ij' } ,可选
笛卡尔('xy' ,默认)或矩阵('ij' )输出索引。有关详细信息,请参阅注释
1.7 .0 版中的新功能。
稀疏 sparse : bool ,可选
如果为True ,则返回稀疏网格以节省内存。默认值为False 。
1.7 .0 版中的新功能。
copy : bool ,可选
如果为False ,则返回原始数组的视图以节省内存。默认为True 。请注意, 可能会返回非连续数组。此外,广播阵列的多于一个元素可以指代单个存储器位置。如果需要写入数组,请先进行复制。sparse= False , copy= False
1.7 .0 版中的新功能。
返回:
X1,X2,. . . ,XN : ndarray
对于具有长度的向量x1,x2,. . . ,'xn' ,如果indexing = 'ij' 则Ni= len ( xi) 返回形状数组; 如果indexing = 'xy' ,则返回形状数组,其中xi的元素重复以沿x1的第一维填充矩阵,第二个用于x2,依此类推。( N1, N2, N3, . . . Nn) ( N2, N1, N3, . . . Nn)
简单例子:
xpos, ypos = np. meshgrid( [ 1 , 2 , 3 ] , [ 5 , 6 , 7 , 8 ] )
print ( 'xpos' , xpos)
print ( 'ypos' , ypos)
结果:
xpos [ [ 1 2 3 ]
[ 1 2 3 ]
[ 1 2 3 ]
[ 1 2 3 ] ]
ypos [ [ 5 5 5 ]
[ 6 6 6 ]
[ 7 7 7 ]
[ 8 8 8 ] ]
ndarray.flatten() 顺序 : {‘C’,‘F’,‘A’,‘K’},可选 'C’表示以行主(C风格)顺序展平。'F’表示以列主要(Fortran风格)顺序展平。如果a是Fortran 在内存中是连续的,那么’A’意味着以列主顺序展平,否则为行主顺序。“K”是指压扁 一个中的元素发生在存储器中的顺序。默认值为“C”。
a = np. array( [ [ 1 , 2 ] , [ 3 , 4 ] ] )
print ( a. flatten( ) )
print ( a. flatten( 'F' ) )
结果:
array( [ 1 , 2 , 3 , 4 ] )
array( [ 1 , 3 , 2 , 4 ] )