牧者

大风起兮云飞扬

  博客园 :: 首页 :: 新随笔 :: 联系 :: 订阅 :: 管理 ::

NumPy

数组中比较重要 ndarray 对象属性有:

 

 

 

NumPy 创建数组

numpy.empty

numpy.empty 方法用来创建一个指定形状(shape)、数据类型(dtype)且未初始化的数组:

numpy.empty(shape, dtype = float, order = 'C')

参数说明:

 

 

 

numpy.zeros

创建指定大小的数组,数组元素以 0 来填充:

 

 

 

import numpy as np
 
# 默认为浮点数
x = np.zeros(5) 
print(x)
 
# 设置类型为整数
y = np.zeros((5,), dtype = np.int) 
print(y)
 
# 自定义类型
z = np.zeros((2,2), dtype = [('x', 'i4'), ('y', 'i4')])  
print(z)

numpy.ones

创建指定形状的数组,数组元素以 1 来填充:

参数说明:

 

 

 

import numpy as np
 
# 默认为浮点数
x = np.ones(5) 
print(x)
 
# 自定义类型
x = np.ones([2,2], dtype = int)
print(x)

  

 

numpy.asarray

numpy.asarray 类似 numpy.array,但 numpy.asarray 参数只有三个,比 numpy.array 少两个。

 

numpy.arange

numpy 包中的使用 arange 函数创建数值范围并返回 ndarray 对象,函数格式如下:

numpy.arange(start, stop, step, dtype)

根据 start 与 stop 指定的范围以及 step 设定的步长,生成一个 ndarray。

参数说明:

 

 

 生成 0 到 5 的数组:

import numpy as np
 
x = np.arange(5)  
print (x) 

设置返回类型位 float:

import numpy as np
 
# 设置了 dtype
x = np.arange(5, dtype =  float)  
print (x) 

设置了起始值、终止值及步长:

import numpy as np
x = np.arange(10,20,2)  
print (x)  

结果:[1012141618]  

numpy.linspace

numpy.linspace 函数用于创建一个一维数组,数组是一个等差数列构成的,格式如下:

np.linspace(start, stop, num=50, endpoint=True, retstep=False, dtype=None) 

参数说明:

 

 

numpy.logspace

numpy.logspace 函数用于创建一个于等比数列。

 

NumPy 切片和索引

 

import numpy as np
 
a = np.arange(10)
s = slice(2,7,2)   # 从索引 2 开始到索引 7 停止,间隔为2
print (a[s])
b = a[2:7:2]# 从索引 2 开始到索引 7 停止,间隔为 2print(b)

 

结果:[246]  

 

切片还可以包括省略号 …,来使选择元组的长度与数组的维度相同。 如果在行位置使用省略号,它将返回包含行中元素的 ndarray。

import numpy as np
 
a = np.array([[1,2,3],[3,4,5],[4,5,6]])  
print (a[...,1])   # 第2列元素
print (a[1,...])   # 第2行元素
print (a[...,1:])  # 第2列及剩下的所有元素  

结果

[2 4 5]
[3 4 5]
[[2 3]
 [4 5]
 [5 6]]

  

  

  

  

  

 

 

importnumpyasnpx = np.arange(5)print(x)

posted on 2019-11-26 15:36  牧者.D  阅读(147)  评论(0)    收藏  举报