Dataframe из dataframes: запись и чтениеPython

Программы на Python
Ответить
Anonymous
 Dataframe из dataframes: запись и чтение

Сообщение Anonymous »

У меня есть набор изображений. В каждом изображении программа находит объекты с атрибутами «X» и «тип». Количество объектов варьируется от изображения к изображению. Следовательно, для одного изображения у меня есть df_objects со строками N_objects и двумя столбцами «X» и «тип».
Затем я создаю df_images с изображениями в виде строк со столбцами «время», «объекты», где запись для объекты — это df_objects, указанный выше. Это очень хорошо работает внутри программы.
Конечно, интерес состоит в том, чтобы сохранить структуру, и я попробовал .to_csv.
Затем я прочитал его с помощью .read_csv
Кажется, это работает, например, используя чтение df_images, я могу распечатать df_objects изображения 1. Но не совсем: df_objects["type"] не принимается и генерирует ошибку : «TypeError: строковые индексы должны быть целыми числами»
хотя код строго идентичен коду, проверенному на исходном df.
Код прилагается
Спасибо!
импортировать pandas как pd
df1 = pd.DataFrame({"X":(1.1,1.2), "type":("a_1","b_1")})
print(' df1')
print(df1)
df2 = pd.DataFrame({"X":(2.1,2.2,2.3),"type":("a_2","b_2","c_2")})
print(' df2')
print(df2)
print(' ')
dfT = pd.DataFrame ({"time":(6,7),"dff":(df1,df2)})
df1_test = dfT["dff"][0]
print(' df1_test')
print(df1_test)
df2_test = dfT["dff"][1]
print(' df2_test')
print(df2_test)
print(' ')
type_list_evt_1 = df1_test["type"]
print(' type_list_evt_1')
print(type_list_evt_1)
print (' ')
dfT.to_csv(path_or_buf = "test_dff.csv", index = "Ложь")
read_dfT = pd.read_csv('test_dff.csv')
df1_read = read_dfT["dff"][0]print(' df1_read')
print(df1_read)
df2_read = read_dfT["dff"][1]
print(' df2_read')
print(df2_read)
print(' ')
type_list_evt_1_read = df1_read["type"]
print(' type_list_evt_1_read')
print(type_list_evt_1_read)
Мне бы хотелось, чтобы считываемый df вёл себя строго так же, как df написано

Подробнее здесь: https://stackoverflow.com/questions/791 ... nd-reading
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Python»