Python多个数组合并(拼接)为一个数组
a = [1,2,3,4,7,5,6]
b = ['a','b']
c = ['h',12,'c']
a.extend(b)
a.extend(c)
print(a)#结果:[1, 2, 3, 4, 7, 5, 6, 'a', 'b', 'h', 12, 'c']
加号连接方法:
a = [1,2,3,4,7,5,6]
b = ['a','b']
c = ['h',12,'c']d = a + b +c
print(d)#结果:[1, 2, 3, 4, 7, 5, 6, 'a', 'b', 'h', 12, 'c']
flatten()方法是numpy中array数组的方法(该方法只能数组元素相同)
from numpy import array
a = [1,2,3]
b = ['a','b','c']
c = ['h',12,'k']
e = [a,b,c]
e = array(e)
print(e.flatten())#结果:['1' '2' '3' 'a' 'b' 'c' 'h' '12' 'k']
列表表达式:
使用前得把所有数组放在一个数组中
a = [1,2,3,4]
b = ['a','b','c']
c = ['h',12,'k']
e = [a,b,c]
e = [y for x in e for y in x]
print(e)结果:[1, 2, 3, 4, 'a', 'b', 'c', 'h', 12, 'k']
注意:“numpy关于Python数组拼接的方法有三种:dstack、hstack和vstack
a = np.array([1, 2])
b = np.array([3, 4])
print(np.dstack((a,b)))
结果:[[[1 3]
[2 4]]]
a = np.array([1, 2])
b = np.array([3, 4])
print(np.hstack((a,b)))
结果:[1 2 3 4]
a = np.array([1, 2])
b = np.array([3, 4])
print(np.vstack((a,b)))
结果:[[1 2]
[3 4]]
a = np.array([1, 2, 3])
b = np.array([4, 5, 6])
c = np.concatenate((a, b)) # 将a和b数组连接起来,得到c数组
print(c) # 输出 [1 2 3 4 5 6]
np.resize()改变数组大小
a = np.array([1, 2, 3])
a.resize((5,)) # 将a数组的大小改变为5,多余的位置用0填充
a[3:] = [4, 5, 6] # 添加元素4、5、6
print(a) # 输出 [1 2 3 4 5 6]
numpy.insert函数在指定位置插入元素,从而实现在数组中添加元素的效果
a = np.array([1, 2, 3])
b = np.insert(a, 1, [4, 5]) # 在a数组的位置1插入元素4、5
print(b) # 输出 [1 4 5 2 3]
vstack不想dstack,只是将数组堆叠到一起,没有深度的问题。