为什么Django赢了';我不能提供熊猫所暗示的金额吗?

为什么Django赢了';我不能提供熊猫所暗示的金额吗?,django,pandas,django-views,Django,Pandas,Django Views,我正在使用pandas操作Dataframe,然后我正在向用户呈现被操作的数据。我不知道这是熊猫的问题还是Django的问题(还是我的问题?)。我尝试将我的数据帧导出到.csv中,然后重新读取它,但没有任何内容 考虑这个Dataframe A B C 0 foo bar 10 1 foo bar2 20 2 foo bar 10 3 foo bar2 250

我正在使用
pandas
操作
Dataframe
,然后我正在向用户呈现被操作的数据。我不知道这是熊猫的问题还是Django的问题(还是我的问题?)。我尝试将我的
数据帧
导出到
.csv
中,然后重新读取它,但没有任何内容

考虑这个
Dataframe

   A         B         C
0  foo      bar        10
1  foo      bar2       20
2  foo      bar        10
3  foo      bar2       250
在my views.py中,
df=df.groupby(['A','B']).sum().sum(级别=['A',],
“B'])。fillna(0)。重置索引()
context.update({'df':df.values})
返回上下文
在我的模板中
{df%中A、B、C的百分比}
{{A}
{{B}
{{C}}
{%endfor%}
我期待着见到你

   A         B         C
0  foo      bar        20
1  foo      bar2       270
我看到了

   A         B         C
0  foo      bar        1010
1  foo      bar2       20250

这很奇怪,因为我试图导出
.csv
并重新导入它。我相信这是一个bug。

到目前为止,我了解到,当您试图将Django中的queryset设置为数据帧时,它仍然将每个值视为一个对象。所以当你尝试求和、减法时,你会遇到和我一样的问题

我是怎么处理的

#TODO: Use Django to export the .csv file instead of pandas.
qs = list(MyModel.objects.value_list('A', 'B', 'C'))
df = pd.DataFrame(qs, columns=['A', 'B', 'C'])
df.to_csv('location_of_csv/temp.csv', sep=';', index=None)

df = pd.read_csv('location_of_csv/temp.csv', sep=';')
df = df.groupby(['A', 'B']).sum().sum(level=['A', 'B']).fillna(0).reset_index()

context.update({'df': df.values})