Как правильно изменить dtype массива numpy - PullRequest
0 голосов
/ 03 марта 2019

У меня есть пустой массив, который я получил от pandas dataframe

data_array = df['column_name'].to_numpy()

Полученный массив имеет объект dtype, как и исходный столбец, и состоит из списков целочисленных значений с shape (2000,).Я хотел бы, чтобы он был типа int32.Однако, когда я пытаюсь использовать

data_array = data_array.astype(np.int32)

, я получаю исключение

setting an array element with a sequence.

Все элементы в массиве - это списки с одинаковым числом целых чисел (сто или около того).

Общий формат:

[[1,0,1,0],[0,0,0,0],[1,0,0,1]]

Есть что-то очевидное, что мне не хватает?Или есть другой, лучший способ, чтобы преобразовать кадры данных pandas в массивные массивы нужного типа?

Поскольку мне кажется, что у меня заканчиваются опции.

EDIT

Я понял это, хотя подход был немного хакерским.

data_array = np.array(df['column_name'].to_list(), np.int32)

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

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