Skip to content

Instantly share code, notes, and snippets.

@jonperron
Last active November 30, 2023 17:29
Show Gist options
  • Select an option

  • Save jonperron/733c3ead188f72f0a8a6f39e3d89295d to your computer and use it in GitHub Desktop.

Select an option

Save jonperron/733c3ead188f72f0a8a6f39e3d89295d to your computer and use it in GitHub Desktop.
Serve pandas dataframe as csv with Django
from django.http import HttpResponse
import pandas as pd
def foo():
results = pd.Dataframe()
response = HttpResponse(content_type='text/csv')
response['Content-Disposition'] = 'attachment; filename=filename.csv'
results.to_csv(path_or_buf=response,sep=';',float_format='%.2f',index=False,decimal=",")
return response
@fistons

fistons commented Aug 18, 2020

Copy link
Copy Markdown

Amazing!

@ioena07

ioena07 commented Aug 30, 2020

Copy link
Copy Markdown

Thank you so much! - it's brilliant!

@himanshu-patel-dev

himanshu-patel-dev commented Oct 24, 2020 •

Copy link
Copy Markdown

Thank you so much -- found it after a long struggle but really helpful.
between
results.to_csv(path_or_buf=response,sep=';',float_format='%.2f',index=False,decimal=",")
can be just
results.to_csv(path_or_buf=response)
if user do not want to go much in details of csv format and getting desired results.

@georgmzimmer

Copy link
Copy Markdown

perfect

@kadiagdg

kadiagdg commented Dec 1, 2021

Copy link
Copy Markdown

thank you so much !

@HOLL4ND

HOLL4ND commented Mar 31, 2022

Copy link
Copy Markdown

nice

@PingoLee

Copy link
Copy Markdown

Perfect

@harshavardhannarla

Copy link
Copy Markdown

Thank you

@Muhammadb1094

Copy link
Copy Markdown

That's good, worked in just 1st try.. Thanks

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment