为了账号安全,请及时绑定邮箱和手机立即绑定

重塑多个数组后的累积问题

重塑多个数组后的累积问题

慕姐8265434 2022-12-20 14:34:17
我有 x_train,这是一个属于数据波形的数组,维度为 (475,1501),我希望最终输出 (seg2) 为 (1425,500)。我尝试了以下代码:count=0sega=[]seg2=[]for i in range (0,len(x_train)):    sega = x_train[i][:(x_train[i].size // 500) * 500].reshape(-1, 500)    seg2[count:(count+1),500] = sega    count = count + i但它抱怨以下错误:---------------------------------------------------------------------------TypeError                                 Traceback (most recent call last)<ipython-input-137-72281c805a83> in <module>     10     sega = x_train[i][:(x_train[i].size // 500) * 500].reshape(-1, 500)     11     print(sega.shape)---> 12     seg2[count:(count+1),500] = sega     13     count = count + i     14 TypeError: list indices must be integers or slices, not tuple我该如何解决这个错误?
查看完整描述

1 回答

?
翻翻过去那场雪

TA贡献2065条经验 获得超13个赞

seg2是一个list。看起来您需要将其声明为np.array. 像这样:


seg2 = np.zeros((total_count, 500))

在哪里total_count=1425。


你也可以np.concatenate这样使用:


seg2 = np.concatenate([

    x_train[i][:(x_train[i].size // 500) * 500].reshape(-1, 500)

    for i in range(0,x_train.shape[0])

], axis=0)


查看完整回答
反对 回复 2022-12-20
  • 1 回答
  • 0 关注
  • 106 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信