【问题标题】:Splitting and sorting a multidimensional array for final year project为最后一年的项目拆分和排序多维数组
【发布时间】:2018-03-09 19:13:48
【问题描述】:

我目前正在处理我的最终主要项目,我可以在遇到的问题上寻求帮助。

基本上我有一个包含 12 个其他数组的数组,其中包含 68 个元素。

我想做的是让该数组的所有元素拆分所有 12 个数组的每个元素并将它们放入不同的数组中。

例如:所有这些数组都在一个主数组中

Main Array = [    

    Array1 = 
          [[ 54,  93],
           [ 55, 114],
           [ 58, 135]] 

    Array2 = 
          [[ 44,  99],
           [ 46, 122],
           [ 48, 143]] 

    Array3 = 
          [[ 47,  89],
           [ 49, 112],
           [ 54, 134]]
]

我的目标应该是这样的:

X_Array = [[54, 44. 47],
           [55, 46, 49], 
           [58, 48, 54]]

Y_Array = [[93, 99, 89],
           [114, 122, 112], 
           [135, 143, 134]]

如果有帮助,我还可以提供来自输出的实际数据。

【问题讨论】:

    标签: python arrays multidimensional-array vector split


    【解决方案1】:

    因此,您在这里需要的是 2 个嵌套的 for 循环,其中,对于每个内部数组,您构建两个较小的数组,每个数组只有您所追求的 x 坐标或 y 坐标。您跟踪要附加的较小数组中的哪个位置。构建较小的数组后,只需将它们添加到更大的 x 数组和 y 数组列表中。

    x_arr = []
    y_arr = []
    sub_length = len(Main_Array[0])
    for i in range(sub_length):
        tmp_x = []
        tmp_y = []
        for array in Main_Array:
            tmp_x.append(array[i][0])
            tmp_y.append(array[i][1])
        x_arr.append(tmp_x)
        y_arr.append(tmp_y)
    print x_arr, y_arr
    

    【讨论】:

    • 您好,感谢您的回复和帮助! :) 我试过你的方法,但是我没有得到我想要得到的输出,你的解决方案为我提供了 '[ [54, 55, 58,]' 作为第一个值,我的目标是得到类似的东西this: 'X_Array = [[54, 44. 47], [55, 46, 49], [58, 48, 54]]'
    • 嗨!抱歉,我已调整解决方案以获得所需的输出
    • 太棒了!非常感谢你的帮助 :)。我对 python 相当陌生,而不是数组的忠实粉丝。尤其是多维的。这对我帮助很大。谢谢!
    猜你喜欢
    • 2019-01-04
    • 1970-01-01
    • 2021-07-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多