numpy.atleast_2d
numpy.atleast_2d(*arys) [source]
将输入视为至少具有二维的数组。
参数 : | arys1, arys2, … :array_like 一个或多个类似数组的序列。 非数组输入将转换为数组。 保留已经具有二维或更多维的数组。 |
返回值 : | res, res2, … :ndarray 一个数组或数组列表,每个数组均带有 尽可能避免复制,并返回二维或更大尺寸的视图。 |
例子
1)输入不同的数组的示例
import numpy as np # 输入是一个标量(零维数组) a = 5 result = np.atleast_2d(a) print(result) # 输出: [[5]] # 示例 2: 输入是一维数组 b = np.array([1, 2, 3]) result = np.atleast_2d(b) print(result) # 输出: [[1 2 3]] # 输入是二维数组 c = np.array([[1, 2], [3, 4]]) result = np.atleast_2d(c) print(result) # 输出: [[1 2] # [3 4]] # 多个输入数组 d = np.array([1, 2]) e = np.array([[3, 4], [5, 6]]) result = np.atleast_2d(d, e) # 输出: [array([[1, 2]]), array([[3, 4], # [5, 6]])]
2)不同使用示例
import numpy as np # 将一个标量转换为至少二维的数组 result1 = np.atleast_2d(3.0) print(result1) # 输出: array([[3.]]) # 将一维数组转换为至少二维的数组 x = np.arange(3.0) result2 = np.atleast_2d(x) print(result2) # 输出: array([[0., 1., 2.]]) # 验证转换后的数组是否与原数组共享数据(视图) is_base = np.atleast_2d(x).base is x print(is_base) # 输出: True # 多个输入时,每个输入转换为至少二维的数组 result4 = np.atleast_2d(1, [1, 2], [[1, 2]]) print(result4) # 输出: [array([[1]]), array([[1, 2]]), array([[1, 2]])]