Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

520
Views
Pandas DataFrame as body of FastAPI's JSONResponse

I have a Pandas DataFrame with several columns and some data that I need to return in a response body from a FastAPI application. Borrowing the DataFrame example from another similar, but different, question:

test_list = [["Joe", 34, "Accounts", 10000], ["Jack", 35, "Chemistry", 20000], ["Jill", 37, "Art", 2000]]
df = pandas.DataFrame(data=test_list, columns=["Name", "Age", "Dept.", "Salary"])

Now if I try to use dataframe.to_json as follows, the returned body is a string with every quote character escaped and is not JSON:

result = df.to_json(orient="records") #creates a json string
return JSONResponse(content = result) 

The above returns something like:

"[{\"Name:\":\"Joe\", \"Age\":\"34\"},  ...etc"

The following works (in that the returned body is valid JSON) but I don't like that the response is returned as plain text instead of JSON. Is there a better, more proper way to do this?

result = df.to_json(orient="records") 
return PlainTextResponse(content = result)
over 4 years ago · Santiago Trujillo
1 answers
Answer question

0

Instead of json, convert it to dict which fastapi should be able to handle automatically:

result = df.to_dict('records')
return JSONResponse(content = result) 
over 4 years ago · Santiago Trujillo Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!