Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/328.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 如何将numpy阵列作为一个整体进行复制_Python_Numpy - Fatal编程技术网

Python 如何将numpy阵列作为一个整体进行复制

Python 如何将numpy阵列作为一个整体进行复制,python,numpy,Python,Numpy,如何复制numpyarray,使其(作为一个整体数组)重复n次 因此,使用一个示例数组: import numpy as np x = np.arange(0, 5) 我想创建一个如下所示的数组,无需手动键入np.arange(0,5)n次: x_3times = np.concatenate([np.arange(0, 5), np.arange(0, 5), np.arange(0, 5)]) 或具有设定长度的输出(例如12) 只需尝试列表理解: x_3times=np.con

如何复制
numpy
array,使其(作为一个整体数组)重复n次

因此,使用一个示例数组:

import numpy as np
x = np.arange(0, 5)
我想创建一个如下所示的数组,无需手动键入
np.arange(0,5)
n次:

x_3times = np.concatenate([np.arange(0, 5), np.arange(0, 5), np.arange(0, 5)])     
或具有设定长度的输出(例如12)


只需尝试列表理解:

x_3times=np.concatenate([np.arange(0,5)表示范围(3)中的x)])
其中编号
3
可由任何编号
n
代替

编辑

如果要将长度限制为任意数量,只需执行以下操作:

cutoff=12
x_3times=np.concatenate([np.arange(0,5)表示范围(3)中的x)][:截止]
这将导致:

数组([0,1,2,3,4,0,1,2,3,4,0,1])
然而,这不是一个非常有效的代码行,特别是在处理大量数据时。另一个答案可能是制造发电机:

def发生器(arr,n,切断=无): 长度=长度(arr) 如果切断: 对于范围内的i(截止): 收益率arr[i%长度] 其他: 对于范围内的u(n): 对于arr中的i: 产量一 array=np.array([x代表生成器中的x(np.arange(0,5,3,12)])
只需尝试列表理解:

x_3times=np.concatenate([np.arange(0,5)表示范围(3)中的x)])
其中编号
3
可由任何编号
n
代替

编辑

如果要将长度限制为任意数量,只需执行以下操作:

cutoff=12
x_3times=np.concatenate([np.arange(0,5)表示范围(3)中的x)][:截止]
这将导致:

数组([0,1,2,3,4,0,1,2,3,4,0,1])
然而,这不是一个非常有效的代码行,特别是在处理大量数据时。另一个答案可能是制造发电机:

def发生器(arr,n,切断=无): 长度=长度(arr) 如果切断: 对于范围内的i(截止): 收益率arr[i%长度] 其他: 对于范围内的u(n): 对于arr中的i: 产量一 array=np.array([x代表生成器中的x(np.arange(0,5,3,12)]) 您可以使用

>x_3times=np.tile(x,3)
>>x_3次
数组([0,1,2,3,4,0,1,2,3,4,0,1,2,3,4])
对于重复到某个特定限制,请使用

>x_12=np.resize(x,12)
>>x_12
数组([0,1,2,3,4,0,1,2,3,4,0,1])
您可以使用

>x_3times=np.tile(x,3)
>>x_3次
数组([0,1,2,3,4,0,1,2,3,4,0,1,2,3,4])
对于重复到某个特定限制,请使用

>x_12=np.resize(x,12)
>>x_12
数组([0,1,2,3,4,0,1,2,3,4,0,1])

谢谢!我已经编辑了一些扩展问题-有什么方法吗?(除切片外)在
np.tile
之后,谢谢!我已经编辑了一些扩展问题-有什么方法吗?(除切片外)在
np.tile
之后,谢谢!我已经编辑了一些扩展问题-有什么方法吗?(切片除外)创建
x_3次后
谢谢!我已经编辑了一些扩展问题-有什么方法吗?创建
x_3次后(切片除外)
x_12 = np.concatenate([np.arange(0, 5), np.arange(0, 5), np.arange(0, 5)])[0:12]