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