1.合并
1.按照列合并
np.hstick(tup)
tup:传入列表或者元组
return:返回合并完成的数组
2.按照行合并
np.vstick(tup)
tup:传入列表或者元组
return:返回合并完成的数组
3.指定轴的合并方式
np.concatenate((a1, a2, ...), axis=0)
(a1, a2, ……):不仅仅可以传入元组,也可传入列表
axis:轴,默认值是0,是按行合并。当出入的值为1时,按照列合并
2.分割
np.split(ary, indices_or_sections)
ary:传入要进行操作的数组
indices_or_sections:传入数值或者传入一个列表,当传入的是一个数值的时候,是平均分配成几组。当传入一个列表的时候,是按照索引进行分类。比如,当传入列表[3, 8, 10]时,会按照0,1,2和3,4,5,6,7和8,9和10……这个方式分组。
return:返回的是一个装有分组状况的列表
合并
代码:
import numpy as np
# 行合并
a = np.array([1, 2, 3, 4]).reshape(1, 4)
b = np.array([2, 3, 4, 5]).reshape(1, 4)
print(np.vstack([a, b]))
print(np.concatenate([a, b]))
# 列合并
print(np.hstack([a, b]))
print(np.concatenate([a, b], axis=1))
输出:
[[1 2 3 4] [2 3 4 5]] [[1 2 3 4] [2 3 4 5]] [[1 2 3 4 2 3 4 5]] [[1 2 3 4 2 3 4 5]]
分割
代码:
import numpy as np
data = np.arange(20)
# 按照数值进行分割
print(np.split(data, 4))
# 按照索引列表进行分割
print(np.split(data, [3, 8, 10]))
输出:
[array([0, 1, 2, 3, 4]), array([5, 6, 7, 8, 9]), array([10, 11, 12, 13, 14]), array([15, 16, 17, 18, 19])] [array([0, 1, 2]), array([3, 4, 5, 6, 7]), array([8, 9]), array([10, 11, 12, 13, 14, 15, 16, 17, 18, 19])]
学习地址: