Каков наилучший способ хранения и сохранения многомерного набора данных - PullRequest
0 голосов
/ 20 марта 2020

По сути, у меня есть список предварительно обработанных данных изображения (вложенный список) и соответствующее целевое значение в другом списке, и они заархивированы

np.array(dataset_x).shape
>>> (253,32,32,3)

np.array(dataset_y).shape
>>> (253,1)

dataset = dataset_x + dataset_y

Моя цель - перемешать их, разделить, затем обучить, протестировать и сохранить модель и набор данных. Я знаю, разделить, хранить и загружать CSV, используя panda, я хотел использовать их, поэтому я использовал pd.DataFrame

In : pdata = pd.DataFrame(dataset,  columns =['img' , 'target']) 
In : np.array(dataset).shape
In : data.shape
>>>(253, 2)

Теперь проблема в том, что я ожидал этого

In : pdata['img'].shape
>>>(253,32,32,3)

но вместо этого я получил

In : pdata['img'].shape
>>>(253,)
In : pdata['img'][0].shape
>>>(32, 32, 3)

Я понял проблему, но не знал, что такое эффективный способ ее решения, в итоге преобразовал их в список с помощью values.tolist(). Каков наилучший способ сохранить этот тип набора данных в dataframe?

Вторая проблема, когда я пытаюсь сохранить dataframe, используя to_csv(), и загрузить их, используя read_csv(). список изображений превращается в строку.

In : dataset= pd.read_csv(r"abc.csv") 
In : dataset['img'].shape
>>> (202,)

In : dataset['img'][0].shape
>>>AttributeError: 'str' object has no attribute 'shape'

In : dataset['img']
>>> 0      [[[0.03137255 0.03137255 0.03137255]\n  [0.015...
    1      [[[0. 0. 0.]\n  [0. 0. 0.]\n  [0. 0. 0.]\n  .....
    2      [[[0. 0. 0.]\n  [0. 0. 0.]\n  [0. 0. 0.]\n  .....
    3      [[[0. 0. 0.]\n  [0. 0. 0.]\n  [0. 0. 0.]\n  .....

как сохранить набор данных и извлечь его как вложенный список ??

...