У меня есть 3d массив (давайте назовите его a) с помощью формы = (365, 28, 36). Я рассматриваю этот массив как трехмерный массив с 365 частями 2d массивов (28,36), уложенных друг на друга. Теперь я хочу пройти через этот трехмерный массив, и каждый 2d-фрагмент должен повторяться 8 раз, а затем складываться друг на друга. Это означает, что в итоге я получаю один массив размером (2920, 28, 36). 2920 - 365 * 8.Петля через 3d массив и добавьте 2d срезов N раз
Моя попытка была такой, но она не работает. Может ли кто-нибудь помочь с этой проблемой?
l = []
for i in range(365):
for j in range(28):
for k in range(30):
l.extend(repeat(a[i,j,k], 8))
Можете ли вы поделиться образцом данных о трехмерном массиве, о котором вы говорите? –
Да. Файл I cal a можно найти здесь. https://1drv.ms/f/s!AlJG9g1WlnmlhDC1WfgR1ljtI67E –
«Это не работает» не является проблемой. Добро пожаловать в StackOverflow. Прочтите и следуйте инструкциям по отправке в справочной документации. [Минимальный, полный, проверяемый пример] (http://stackoverflow.com/help/mcve) применим здесь. Мы не можем эффективно помочь вам, пока вы не разместите свой код MCVE и не сможете точно описать проблему. – Prune