【发布时间】:2019-06-15 08:40:07
【问题描述】:
我对如何实现以下目标感到困惑:
假设我有一个大小为 X 的数组(例如:3000 个项目)。我想创建一个函数,通过复制每个 N 项来将该数组拉伸到大小 Y(例如:4000)。 与另一个函数一起做相反的事情,例如删除每 N 个项目以使数组大小为 2000。
我想这更像是一个数学问题,而不是一个编程问题,正如你所知,数学不是我的强项。到目前为止,这是我所拥有的:
def upsample(originalArray, targetSize):
newArray = []
j = 0
for i in range (0, len(originalArray)):
newArray.append(originalArray[i])
# calculate at what interval items need to be duplicated
# this is what I'm having trouble with
if j == interval:
newArray.append(originalArray[i])
j = 0
j+=1
return newArray
这是我正在尝试做的一个示例:
# stretch array from 10 to 12 items
originalArray = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
upsample(originalArray, 11)
# output: [0, 1, 2, 3, 4, 4, 5, 6, 7, 8, 9, 9]
任何帮助将不胜感激
【问题讨论】:
标签: python numpy math scipy resampling