создать новый numpy nd-массив несколькими столбцами - PullRequest
0 голосов
/ 19 февраля 2020

У меня есть массив NumPy, который включает в себя два столбца, один для ключа и другой для числа экземпляров. Например:

 key | num_of_instances
 ----------------------
  99  | 2
  88  | 3
  77  | 1

Я хочу выровнять это в 1-й массив в этой структуре:

 [99, 99, 88, 88, 88, 77]

т.е. каждый ключ в оригинальном 2D-массиве должен появиться в новом 1D -array, как это число экземпляров во втором столбце в исходном массиве.

1 Ответ

0 голосов
/ 19 февраля 2020

Решение, которое работает для меня, включает использование функции repeat . Эта функция повторяет элементы массива и имеет некоторые параметры конфигурации для 1-D, nD и т. Д. c, например, написано здесь .

data = data.astype(str).astype(int) # this line solved the casting type error I tackled before
one_dimension_data = np.repeat(data[:,0],data[:,1])

спасибо @ user3483203 за его информативные комментарии .

...