Как вставить многомерный массив NumPy в столбец панд? - PullRequest
1 голос
/ 16 июня 2019

У меня есть некоторый массив numpy, число строк (ось = 0) которого совпадает с количеством строк в панде.

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

Код:

    some_df = pd.DataFrame(columns=['A'])
    for i in range(10):
        some_df.loc[i] = [np.random.rand(4, 6, 8)

    data = np.stack(some_df['A'].values)  #shape (10, 4, 6, 8)
    processed = np.max(data, axis=1)  # shape (10, 6, 8)

    some_df['B'] = processed  # This fails

Я хочу, чтобы новый столбец 'B' содержал пустые массивы формы (6, 8)

Как это можно сделать?

1 Ответ

2 голосов
/ 16 июня 2019

Поскольку это не рекомендуется, это боль, медленная и последующая обработка не легка.

Одним из возможных решений является использование списка:

some_df['B'] = [x for x in processed]

Или преобразование в список и назначение:

some_df['B'] = processed.tolist()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...