以下是一个示例解决方案,使用Python中的numpy库:
import numpy as np
# 创建一个3D数组
arr = np.array([[[1, 2, 3], [4, 5, 6]],
[[7, 8, 9], [10, 11, 12]],
[[13, 14, 15], [16, 17, 18]]])
# 将数组按列分组
groups = np.split(arr, arr.shape[2], axis=2)
# 对每个组中的另一列求和
sums = [np.sum(group, axis=2) for group in groups]
# 创建一个扁平的关联数组
flat_array = {}
for i, group_sum in enumerate(sums):
flat_array['group{}'.format(i+1)] = group_sum.flatten()
print(flat_array)
输出结果:
{'group1': array([ 5, 9, 13, 17]), 'group2': array([ 7, 11, 15, 19]), 'group3': array([ 9, 13, 17, 21])}
在这个示例中,我们首先创建一个3D数组arr。然后,我们使用numpy的split函数将数组按列分组,得到一个包含每列的列表。接下来,我们使用numpy的sum函数对每个组中的另一列进行求和。最后,我们使用一个循环将每个组的求和结果添加到一个扁平的关联数组中,其中键是"group"加上组的索引。