numpy & pandas (5) 合并与分割

一、合并

import numpy as np


a = np.array([1, 1, 1])
b = np.array([2, 2, 2])
c = np.vstack((a, b))       # vertical stack  纵向合并
d = np.hstack((a, b))       # horizontal stack 横向合并
e = np.vstack((a,b,b,a))

                                        #数组a不是矩阵,a.T仍然与数组a相同,需要将数组a增加维度变为矩阵
f = a[np.newaxis,:]         #在数组a中增加横向维度,变为矩阵
g = a[:, np.newaxis]        #在数组a中增加纵向维度,变为矩阵

h = np.concatenate((a, b), axis = 0)   #axis=0为纵向, axis=1为横向


print(a) 
print(b)
print(c)
print(d)
print(e)
print(f)
print(g)
print(h)

======================= RESTART: C:/Users/hyx/test.py =======================
[1 1 1]
[2 2 2]
[[1 1 1]
 [2 2 2]]
[1 1 1 2 2 2]
[[1 1 1]
 [2 2 2]
 [2 2 2]
 [1 1 1]]
[[1 1 1]]
[[1]
 [1]
 [1]]
[1 1 1 2 2 2]
>>>   

二、分割

import numpy as np

a = np.arange(12).reshape((3, 4))

print(a)                                 

print('-------------等量分割---------------')
print(np.split(a, 2, axis = 1))          #axis = 0  对列操作

print(np.split(a, 3, axis = 0))          #axis = 1  对行操作

print('-------------不等量分割---------------')
print(np.array_split(a, 3, axis = 1))    #将4列分为2-1-1 3个矩阵

print('-------------简易分割---------------')
print(np.vsplit(a, 3))

print(np.hsplit(a, 2))
 

========== RESTART: C:/Users/wyt/Desktop/学习/numpy & pandas/split.py ==========
[[ 0  1  2  3]
 [ 4  5  6  7]
 [ 8  9 10 11]]
-------------等量分割---------------
[array([[0, 1],
       [4, 5],
       [8, 9]]), array([[ 2,  3],
       [ 6,  7],
       [10, 11]])]
[array([[0, 1, 2, 3]]), array([[4, 5, 6, 7]]), array([[ 8,  9, 10, 11]])]
-------------不等量分割---------------
[array([[0, 1],
       [4, 5],
       [8, 9]]), array([[ 2],
       [ 6],
       [10]]), array([[ 3],
       [ 7],
       [11]])]
-------------简易分割---------------
[array([[0, 1, 2, 3]]), array([[4, 5, 6, 7]]), array([[ 8,  9, 10, 11]])]
[array([[0, 1],
       [4, 5],
       [8, 9]]), array([[ 2,  3],
       [ 6,  7],
       [10, 11]])]
>>> 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值