我需要分组2个数组,它需要来自不同的数据。我想把它们分组成一个数组。
例如我有
arrTrain[index][5] = [29.8496231131986], [23.748684174075834]
和
arrTrain[index][4] = [1],[0]
所以我需要将它们分组为=
[[[29.8496231131986],[1]],[[23.748684174075834],[0]]]
我的计划
tabel = []
for i in range(0,1):
temp = []
for j in range(0,2):
euc = [math.sqrt(((arrTrain[j][0] - arrTes[i][0])**2) + ((arrTrain[j][1]-arrTes[i][1])**2) + ((arrTrain[j][2] - arrTes[i][2])**2) + ((arrTrain[j][3]-arrTes[i][3])**2))]
hoaxbaru = [arrTrain[j][4]]
temp.append(euc)
temp.append(hoaxbaru)
tabel.append(temp)
print(table)
,输出
[[[29.8496231131986], [0], [23.748684174075834], [0]], [[29.8496231131986], [0], [23.748684174075834], [0]]]
答案 0 :(得分:0)
要以这种方式合并数组,您可以使用zip内置函数。
示例:
>>> arr1 = [1,2,3,4,5,6]
>>> arr2 = [7,8,9,10,11,12]
>>> zipped = zip(arr1,arr2)
>>> list(zipped)
[(1, 7), (2, 8), (3, 9), (4, 10), (5, 11), (6, 12)]
答案 1 :(得分:0)
您需要在内部循环中将temp初始化为空列表。
temp=[]
此外,它只是继续追加以前的数据。