热线电话:13121318867

登录
2019-01-22 阅读量: 2814
如何通过复制/跳过每N项来重新采样数组?

我对如何实现以下内容感到困惑:

假设我有一个大小为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]

0.0000
3
关注作者
收藏
评论(1)

发表评论
啊啊啊啊啊吖
2019-01-22
要对数组进行下采样: N =2 #downsampling by 2 new = originalArray[0:N:] 或更明确地: res = list() i=0 while(i
0.0000 0 0 回复
啊啊啊啊啊吖
2019-01-22
或更明确地: res = list() i=0 while(i
0.0000 0 0 回复