Как создать массив массивов с динамическим размером с NumPy? - PullRequest
0 голосов
/ 20 сентября 2018

Я хотел бы получить массив массивов numpy с диапазоном длины, например:

>>> source = np.array([1, 2, 3, 4, 5, 6, 7, 8, 9, 10])
>>> get_array_of_arrays_with_min_length(source, 5)
    array([[1, 2, 3, 4, 5, 6, 7, 8, 9, 10],
           [2, 3, 4, 5, 6, 7, 8, 9, 10],
           [3, 4, 5, 6, 7, 8, 9, 10],
           [4, 5, 6, 7, 8, 9, 10],
           [5, 6, 7, 8, 9, 10],
           [6, 7, 8, 9, 10]])

Как это сделать с меньшим количеством кода?

1 Ответ

0 голосов
/ 20 сентября 2018

Создайте свои списки,

l = [ [i+1 for i in range(x+1, 10)] for x in range(6)]

Затем создайте свой массив.

a = numpy.array(l)

Если бы мне пришлось угадывать, что должна делать ваша функция,

def get_array_of_arrays(source, m):
    return [ [ i for i in source if i>x] for x in range(m+1)]

Это даст вам результат, который вы запросили из предоставленных материалов.На самом деле главная идея здесь - составить список списков.

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