Flask接口签名sign原理与实例代码浅析
385
2022-08-29
Numpy的矩阵array分割(numpy multiarray)
创建数据
首先 import 模块
import numpy as np
建立3行4列的Array
A = np.arange(12).reshape((3, 4))print(A)"""array([[ 0, 1, 2, 3], [ 4, 5, 6, 7], [ 8, 9, 10, 11]])"""
纵向分割
print(np.split(A, 2, axis=1))"""[array([[0, 1], [4, 5], [8, 9]]), array([[ 2, 3], [ 6, 7], [10, 11]])]"""
横向分割
print(np.split(A, 3, axis=0))# [array([[0, 1, 2, 3]]), array([[4, 5, 6, 7]]), array([[ 8, 9, 10, 11]])]
错误的分割
范例的Array只有4列,只能等量对分,因此输入以上程序代码后Python就会报错。
print(np.split(A, 3, axis=1))# ValueError: array split does not result in an equal division
为了解决这种情况, 我们会有下面这种方式.
不等量的分割
在机器学习时经常会需要将数据做不等量的分割,因此解决办法为np.array_split()
print(np.array_split(A, 3, axis=1))"""[array([[0, 1], [4, 5], [8, 9]]), array([[ 2], [ 6], [10]]), array([[ 3], [ 7], [11]])]"""
成功将Array不等量分割!
其他的分割方式
在Numpy里还有np.vsplit()与横np.hsplit()方式可用。
print(np.vsplit(A, 3)) #等于 print(np.split(A, 3, axis=0))# [array([[0, 1, 2, 3]]), array([[4, 5, 6, 7]]), array([[ 8, 9, 10, 11]])]print(np.hsplit(A, 2)) #等于 print(np.split(A, 2, axis=1))"""[array([[0, 1], [4, 5], [8, 9]]), array([[ 2, 3], [ 6, 7], [10, 11]])]"""
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~