可以使用以下方法创建数组
numpy.empty
生成一组随机的数组
import numpy as np
x = np.empty([3,2], dtype = int)
print (x)
生成一组随机的数组
[[ 6917529027641081856 5764616291768666155]
[ 6917529027641081859 -5764598754299804209]
[ 4497473538 844429428932120]]
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)
[0. 0. 0. 0. 0.]
[0 0 0 0 0]
[[(0, 0) (0, 0)]
[(0, 0) (0, 0)]]
numpy.ones
生成用1填充的的数组
import numpy as np
# 默认为浮点数
x = np.ones(5)
print(x)
# 自定义类型
x = np.ones([2,2], dtype = int)
print(x)
[1. 1. 1. 1. 1.]
[[1 1]
[1 1]]
numpy.asarray
从已有的数组创建数组
将列表转换为 ndarray
import numpy as np
x = [1,2,3]
a = np.asarray(x)
print (a)
[1 2 3]
将元组转换为ndarray
import numpy as np
x = (1,2,3)
a = np.asarray(x)
print (a)
[1 2 3]
将元组列表转换为 ndarray
import numpy as np
x = [(1,2,3),(4,5)]
a = np.asarray(x)
print (a)
[(1, 2, 3) (4, 5)]
numpy.arange
生成 0 到 5 的数组
import numpy as np
x = np.arange(5)
print (x)
[0 1 2 3 4]
设置了起始值、终止值及步长
import numpy as np
x = np.arange(10,20,2)
print (x)
[10 12 14 16 18]
numpy.linspace
和上面有些类似,这是返回一个等差数列构成的数组
np.linspace(start, stop, num=50, endpoint=True, retstep=False, dtype=None)
import numpy as np
a = np.linspace(10, 20, 5, endpoint = False)
print(a)
[10. 12. 14. 16. 18.]
numpy.logspace
这是创建一个等比数组
np.logspace(start, stop, num=50, endpoint=True, base=10.0, dtype=None)
import numpy as np
# 默认底数是 10
a = np.logspace(1.0, 2.0, num = 10)
print (a)
[ 10. 12.91549665 16.68100537 21.5443469 27.82559402
35.93813664 46.41588834 59.94842503 77.42636827 100. ]