Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/307.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/loops/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 需要帮助拼接列表吗_Python_Loops_Splice - Fatal编程技术网

Python 需要帮助拼接列表吗

Python 需要帮助拼接列表吗,python,loops,splice,Python,Loops,Splice,我有一张144号的单子。我需要每16个元素存储在一个二维数组中。最后,我想要一个16x9二维阵列。如何在循环中拉出这些元素并重新排列它们?这是我到目前为止所拥有的 yuH = np.zeros([N, t]) i = 0 j = 0 for i in range(t): for j in range(len(p)): print(p[0+j:16+j]) yuH[:,i] = p[0+j:16+j] # change to N j = j

我有一张144号的单子。我需要每16个元素存储在一个二维数组中。最后,我想要一个16x9二维阵列。如何在循环中拉出这些元素并重新排列它们?这是我到目前为止所拥有的

yuH = np.zeros([N, t])
i = 0
j = 0
for i in range(t):
    for j in range(len(p)):
        print(p[0+j:16+j])
        yuH[:,i] = p[0+j:16+j] # change to N
        j = j + 16
在这种情况下,N是16,t是9。p是我的144人名单。yuH是我试图创建的矩阵。唉,它不起作用了。。。 在多次运行之后,我在yuH[:,I]=p[0+j:16+j]行上设置一个数组元素的序列,得到ValueError

类似于

p = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20]

p = [[1,  [5,  9,  [13, [17, 
      2,   6,  10,  14,  18, 
      3,   7,  11,  15,  19, 
      4],  8]  12], 16], 20]]

如果您只需要重新组织数组p,则可以执行以下操作:

将numpy作为np导入 N=16 t=9 p=np.aranget*N示例数组p yuH=p.重塑[t,N] printyuH.shape >>> 9, 16 普林特尤 >>> [[ 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15] [ 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31] [ 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47] [ 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63] [ 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79] [ 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95] [ 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111] [112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127] [128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143]]
什么是p?您的列表?也许您应该从一个较小的矩阵开始,例如3x2,以及样本数据和预期结果。请提供一个包含样本输入和基于该输入的样本输出的列表。听起来您需要使用,或者。@MarkSnyder Yes!对不起,这样做的顺序对吗?在这种情况下,秩序真的很重要。第一列是列表的前16个元素,第二列是接下来的16个元素,依此类推?我说不出来,因为它们都是一个。@becs编辑了答案,这样你就可以检查它是否保持了秩序。嗯,不完全是这样。我正在寻找更多的前16个元素的列表需要成为第一列。不是前9行需要是你感觉的第一行吗?@因为我不好,我理解了相反的意思,看看它。太棒了,因为我可以在那之后转置它。非常感谢。