python numpy(一)定义
import random import numpy as np t1 = np.array([1, 2, 3]) print(t1) #使用numpy生产数组,=np.array(range(10)) t3 = np.arange(10) print(type(t1)) print(type(t3)) print(t3) #数据里面的类型int32 print(t3.dtype) #给数组设置类型 t4=np.array([1,1,0,1,0,0],dtype=bool) print(t4) print(t4.dtype) t5=np.array(range(1,4),dtype="i1") print(t5) print(t5.dtype) #调整数据类型 t6=t5.astype("int64") print(t6) print(t6.dtype) #random.random(),只能生成0-1之间的小数 # random.uniform(x, y)方法将随机生成一个实数,它在 [x,y] 范围内。 t7=np.array([random.random() for i in range(10)]) print(int(random.uniform(100,110)))#按照指定的区间进行生成小数 print(t7) print(t7.dtype)
import numpy as np t1=np.arange(12) print(t1) #打印数组的维数 t2 = t1.shape print(t2) t3=np.array([[1,2,3],[4,5,6]]) t4 = t3.shape print(t4) t5=np.arange(12) t6 = t5.reshape(3, 4) print(t6) print('-'*30) # 1、用于array(数组)对象 a=np.array([[1,2],[3,4],[5,6]]) print(a) print(a.flatten()) #默认按行的方向降维 print(a.flatten('A')) #按行降维 print(a.flatten('F')) #按列降维 print('-'*30) x=np.arange(24) xx=x.reshape(4,6) print(xx) xxx = xx + 2 print(xxx) xx_xxx = xx - xxx print(xx_xxx) xxxx = xx / 2 print(xxxx) print('-'*30) x=np.arange(6) print(x) hang = xx - x print(hang) #每行减去行 lie = xx-np.arange(4).reshape(4, 1) print(lie) #每列减去列
创建一个 NumPy ndarray 对象
NumPy 用于处理数组。NumPy 中的数组对象称为 ndarray
.
我们可以 ndarray
使用该array()
函数创建一个 NumPy 对象。
type():这个内置的 Python 函数告诉我们传递给它的对象的类型。就像上面的代码一样,它显示了arr
类型 numpy.ndarray
。
0-D 数组
0-D 数组或标量是数组中的元素。数组中的每个值都是一个 0-D 数组。
一维阵列
以 0 维数组作为其元素的数组称为一维数组或一维数组。
这些是最常见和最基本的数组。
二维阵列
以一维数组作为其元素的数组称为二维数组。
这些通常用于表示矩阵或二阶张量。
NumPy 有一个专门用于矩阵运算的子模块,称为 numpy.mat
例子
创建一个二维数组,其中包含两个数组,其值为 1,2,3 和 4,5,6:
import numpy as np
arr = np.array([[1, 2, 3], [4, 5, 6]])
print(arr)
自己试试 »3-D 阵列
以 2-D 数组(矩阵)作为元素的数组称为 3-D 数组。
这些通常用于表示三阶张量。
例子
用两个 2-D 数组创建一个 3-D 数组,这两个数组都包含两个值 1,2,3 和 4,5,6 的数组:
import numpy as np
arr = np.array([[[1, 2, 3], [4, 5, 6]], [[1, 2, 3], [4, 5, 6]]])
print(arr)
自己试试 »检查维数?
NumPy Arrays 提供了ndim
返回整数的属性,该整数告诉我们数组有多少维。
例子
检查数组有多少维:
import numpy as np
a = np.array(42)
b = np.array([1, 2, 3, 4, 5])
c = np.array([[1, 2, 3], [4, 5, 6]])
d = np.array([[[1, 2, 3], [4, 5, 6]], [[1, 2, 3], [4, 5, 6]]])
print(a.ndim)
print(b.ndim)
print(c.ndim)
print(d.ndim)
自己试试 »高维数组
数组可以有任意数量的维度。
创建数组时,您可以使用ndmin
参数定义维数。
例子
创建一个有 5 个维度的数组并验证它是否有 5 个维度:
import numpy as np
arr = np.array([1, 2, 3, 4], ndmin=5)
print(arr)
print('number of dimensions :', arr.ndim)
自己试试 »在这个数组中,最里面的维度(第 5 个维度)有 4 个元素,第 4 个维度有 1 个元素是向量,第 3 个维度有 1 个元素是向量的矩阵,第 2 个维度有 1 个元素是 3D 数组和第一个暗淡有 1 个元素,它是一个 4D 数组。
转载于:
https://www.w3schools.com/python/numpy/numpy_array_indexing.asp