Я добавляю многомерные массивы с помощью for-l oop описанным ниже способом. Однако результат не такой, как хотелось бы. Желаемый результат - один массив, состоящий из нескольких массивов 5D.
import numpy as np
series_1 = [
[0. 0. 0. 0. 0.],
[0. 0. 0. 0. 0.],
[0. 0. 0. 0. 0.]]
series_2 = [
[0. 1. 0. 0. 0. ],
[0. 0.5 0.5 0. 0. ],
[0. 1. 0. 0. 0. ],
[0. 0. 1. 0. 0. ]]
series_3 = [
[1. 0. 0. 0. 0. ],
[0.5 0. 0. 0. 0. ],
[1. 0. 0. 0. 0. ],
[1. 0. 0. 0. 0. ],
[0. 0. 0. 1. 0. ]]
phases = [1, 2, 3]
average_total = []
for phase in phases:
if phase == 1:
average_series_T = series_1
elif phase == 2:
average_series_T = series_2
elif phase == 3:
average_series_T = series_3
# add each phase to the total sequence
average_total.append(average_series_T)
print("average total:")
print(average_total)
Вывод:
[array([[0., 0., 0., 0., 0.],
[0., 0., 0., 0., 0.],
[0., 0., 0., 0., 0.]]), array([[0. , 1. , 0. , 0. , 0. ],
[0. , 0.5, 0.5, 0. , 0. ],
[0. , 1. , 0. , 0. , 0. ],
[0. , 0. , 1. , 0. , 0. ]]), array([[1. , 0. , 0. , 0. , 0. ],
[0.5, 0. , 0. , 0. , 0. ],
[1. , 0. , 0. , 0. , 0. ],
[1. , 0. , 0. , 0. , 0. ],
[0. , 0. , 0. , 1. , 0. ]])]
Однако я хочу, чтобы вывод был:
[
[0., 0., 0., 0., 0.],
[0., 0., 0., 0., 0.],
[0., 0., 0., 0., 0.],
[0. , 1. , 0. , 0. , 0. ],
[0. , 0.5, 0.5, 0. , 0. ],
[0. , 1. , 0. , 0. , 0. ],
[0. , 0. , 1. , 0. , 0. ],
[1. , 0. , 0. , 0. , 0. ],
[0.5, 0. , 0. , 0. , 0. ],
[1. , 0. , 0. , 0. , 0. ],
[1. , 0. , 0. , 0. , 0. ],
[0. , 0. , 0. , 1. , 0. ],
]
Я хотел бы, чтобы результат был массивом 5D-массивов , однако Pandas DataFrame или что-то подобное также будет работать. Я в основном хочу объединить series_1 series_2 и series_3 в один объект с формой (x, 5), где x - количество 5D-массивов.