Преобразовать столбец данных pandas типа object в массив numpy - PullRequest
0 голосов
/ 29 мая 2018

У меня есть pandas dataframe, который содержит идентификатор изображения, класс изображения и данные изображения:

img_train.head(5)

   ID  index  class                                               data
0  10472  10472      0  [[[255, 255, 255, 0], [255, 255, 255, 0], [255...
1   7655   7655      0  [[[255, 255, 255, 0], [255, 255, 255, 0], [255...
2   6197   6197      0  [[[255, 255, 255, 0], [255, 255, 255, 0], [255...
3   9741   9741      0  [[[255, 255, 255, 0], [255, 255, 255, 0], [255...
4   9169   9169      0  [[[255, 255, 255, 0], [255, 255, 255, 0], [255...

Я пытаюсь преобразовать каждый из этих столбцов в массив numpy:

train_img_array = np.array([])
train_id_array = np.array([])
train_lab_array = np.array([])
count = 0
for index, row in img_train.iterrows():
    imgid = row['ID']
    imgclass = row['class']
    imgdata = row['data']
    #print(imgdata)
    train_img_array = np.append(train_img_array, imgdata )
    train_lab_array = np.append(train_lab_array, imgclass )
    train_id_array = np.append(train_id_array, imgid )

Однако столбец, который содержит данные изображения и имеет тип «объект», не переводится в соответствующую строку в массиве пустышек.Например, это форма каждого массива после обработки 58 строк из исходного кадра данных:

train_img_array.shape
train_lab_array.shape
train_id_array.shape
(93615200,)
(58,)
(58,)

Как мне это исправить?

1 Ответ

0 голосов
/ 29 мая 2018

Я нашел ответ на этот вопрос.Это довольно прямолинейно, и я просто не видел этого с самого начала.Вот так я и получаю данные объекта в массив numpy (.values ​​:))

train_img_array = np.array([])
train_id_array = np.array([])
train_lab_array = np.array([])
train_id_array = img_train['ID'].values
train_lab_array = img_train['class'].values
train_img_array =img_train['data'].values
#train_img_array = np.row_stack(img_train['data'])
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...