Преобразуйте список списков неравной длины в массив numpy

У меня есть определенный массив сdtype = objectэлементы массива представляют пары координат в разное время, и я хочу преобразовать его в более простой формат. Мне удалось сделать это «один раз», но я не могу заставить его работать за все время наблюдений.

Длина каждого наблюдения различна, поэтому, возможно, я должен использовать маскированные значения, чтобы сделать это. Ниже приведен пример, который, я надеюсь, лучше объясняет, чего я хочу.

# My "input" is:
a = np.array([[], [(2, 0), (2, 2)], [(2, 2), (2, 0), (2, 1), (2, 2)]], dtype=object)

#And my "output" is:

#holding_array_VBPnegl
array([[2, 0],
       [2, 2],
       [2, 1]])

#It doesnt consider my for loop in a.shape[0], so the expected result is :
test = np.array([[[True, True],
       [True, True],
       [True, True]],

       [[2, 0],
       [2, 2],
       [True, True]]

       [[2, 0],
       [2, 2],
       [2, 1]]])

#with "True" the masked values

Я попытался с помощью кода, который я нашел на StackOverflow:

import numpy as np

holding_list_VBPnegl=[]
for i in range(a.shape[0]):
    for x in a[i]:
        if x in holding_list_VBPnegl:
            pass
        else:
            holding_list_VBPnegl.append(x)

print holding_list_VBPnegl
holding_array_VBPnegl = np.asarray(holding_list_VBPnegl)

Ответы на вопрос(1)

Ваш ответ на вопрос