Как изменить набор данных, который не выровнен, и выбросить оставшиеся данные с numpy? - PullRequest
2 голосов
/ 02 марта 2020

У меня есть массив со случайной длиной, размер которой я не знаю.

Я хочу преобразовать массив в двумерный массив размером 128

np.reshape(array, (128, -1))

Если я сделаю это, будут значения, которые больше или больше, чем необходимо, поэтому функция завершается ошибкой. Как я могу сказать numpy выбросить оставшиеся данные или выбросить данные в руки, если данных недостаточно для изменения формы?

1 Ответ

0 голосов
/ 02 марта 2020

Вы можете просто рассчитать, сколько данных вы должны выбросить раньше (и нарезать их).

Пример:

import numpy as np

data = np.array(np.random.rand(200))
# Setup target dimension
dim = 128
# Calculate the maximum index
max_index = (len(data)//dim)*dim
# Get valid data
data = data[:max_index]
# Reshape data to new dimension
new = np.reshape(data, (dim, -1))
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...