我将Django模型中的Pandas DataFrame作为PickledObjectField存储。我需要根据某些逻辑访问和修改此DataFrame。熊猫使这项工作变得容易得多,在这里,我有一个使用熊猫选择和过滤器的引擎类。
我是否应该有一个单独的模型,在其中将每一行存储在DataFrame中,然后使用django-pandas进行读取,执行操作并更新模型?关键是要通过添加/删除一些行来修改DataFrame,因此,如果要将其存储在模型中,则删除所有记录并重新填充模型会更容易。
DataFrame少于100行,因此我不必担心可伸缩性。
答案 0 :(得分:0)
如果将数据帧另存为拾取对象,则升级大熊猫后可能会出现不兼容问题。
如果您不需要操纵数据框的每一行,那么我不会添加新的Django模型来保存记录,因为每次需要使用它们时,我都必须< / p>
我的建议是将DataFrame作为CSV文件转储,并将其位置保存在您现在具有PickledObjectField的同一模型上。
df.to_csv('path/to/dataframe.csv')
使用CSV文件,您可以
df = pandas.read_csv('path/to/dataframe.csv')