Почему этот массив Python не разрезан? - PullRequest
0 голосов
/ 06 февраля 2020

Исходные данные:

array([[0.0417634 ],
   [0.04493844],
   [0.04932728],
   [0.04601787],
   [0.04511007],
   [0.04312284],
   [0.0451733 ],
   [0.04560687],
   [0.04263394],
   [0.04183227],
   [0.048634  ],
   [0.05198746],
   [0.05615724],
   [0.05787913], dtype=float32)

, затем я преобразовал его в массив 2d

array2d = np.reshape(dataset, (-1, 2))

Теперь у меня есть

array([[0.0417634 , 0.04493844],
   [0.04932728, 0.04601787],
   [0.04511007, 0.04312284],
   [0.0451733 , 0.04560687],
   [0.04263394, 0.04183227],
   [0.048634  , 0.05198746],
   [0.05615724, 0.05787913],
   [0.05989346, 0.0605077 ], dtype=float32)

Теперь я собираюсь рассчитать среднее значение между каждым элементом массива

paa = []
paa.append(array2d.mean(axis=1))

Теперь я хочу список интервалов из этого списка

intervals = paa[::10]
intervals

, но результат тот же список (Паа). Почему? Уже пытался преобразовать его в np.array (paa)

Ожидается новый список с меньшим количеством элементов. Поскольку 10 - это число шагов, которые я ожидаю [0.0417634, ... paa [11], .... paa [21] ....]

1 Ответ

2 голосов
/ 06 февраля 2020

np.mean вернет np.array. Вы берете результат и добавляете его в list. Когда вы нарезаете его, вы получаете 0th (и только) элемент в paa, который является целым np.array.

Избавьтесь от list, добавьте и нарежьте непосредственно в результате среднего.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...