我编写了以下代码,将数组分为4部分,并分别获得了第一部分。现在,我需要获取其他剩余部分作为连接的单独数组。
test = [(0,1,2),(9,0,1),(0,1,3),(0,1,8)]
print(test)
test_np = np.array_split(test,4)
np2 = test_np[2]
然后我可以将其他3个部分合并到新数组np_new = [(0,1,2),(0,1,3),(0,1,8)]
我不知道该怎么做?即使我选择第二部分并期待合并第一,第三和第四部分,它也应该对我有帮助。
答案 0 :(得分:1)
在您的情况下,“ test”是一个元组列表,因此您不需要numpy:
import numpy as np
test = [(0,1,2),(9,0,1),(0,1,3),(0,1,8)]
t_0 = test[:1]
t_1 = test[1]
new_test= t_0+test[2:]
print(new_test)
# as np.array:
np_test=np.array(test)
如果首先有一个numpy数组:
import numpy as np
np_test = np.array([(0,1,2),(9,0,1),(0,1,3),(0,1,8)])
new_np_test = np.vstack((np_test[0], np_test[2:]))
答案 1 :(得分:0)
您可以通过切片python数组来做到这一点。例如,使用数组
x = ['a','b','c','d','e','f','g','h']
您可以进行多种切割。 x [1:3]返回数组的第1到第3个元素。 x [:3]返回第0至第3个元素。 x [4:]返回第四个,直到数组的结尾。
x [1:3] = ['b','c'], x [:3] = ['a','b','c'], x [4:] = ['e','f','g','h']
例如,
test = [(0,1,2),(9,0,1),(0,1,3),(0,1,8)]
print(test)
np1 = test[0]
# To keep the rest in test matrix
test = test[1:]