#pandas #flask #flask-restful
#панды #колба #фляжка-успокоительная
Вопрос:
Я пытаюсь вернуть объект JSON из API Flask. Я хочу, чтобы объект фрейма данных pandas возвращался вместе с одним целочисленным значением, полученным из одной из ячеек фрейма данных. Что — то вроде этого:
import pandas as pd df = pd.read_csv('my_file.csv') value = df.some_column[0]
Ответ, который я хочу получить, имеет форму:
{ "details": df, # the dataframe but jsonified somehow "value": value }
Я перепробовал много подходов, но получаю ошибки типа «Объект набора типов не сериализуется в формате JSON» и т. Д. Я пытался
1) df = df.to_json(orient="records")
2) jsonify({ "details": df, # the dataframe but jsonified somehow "value": value })
но это работает не так, как ожидалось. На лицевой стороне я иногда получаю строку вместо JSON. Как правильно преобразовать словарь python в ответ JSON?
Комментарии:
1. У панд есть
to_json()
метод, и я использовал его следующим образом:df_json = df.to_json(orient="records")
. Окончательный ответ-объект dict:dict(details=df_json, value=json.dumps(value))