Commit aef94007 by mohammed.shibili

file uploading section added

parent ec7edf89
import pandas as pd
def extract_min_max(collection_name):
datas = collection_name.find({})
dataframe = pd.DataFrame(list(datas))
# fetching min salary
min_salary = dataframe["salary"].min()
min_details = collection_name.find({"salary": min_salary}, {"_id": 0})
# fetching max salary
max_salary = dataframe["salary"].max()
max_details = collection_name.find({"salary": max_salary}, {"_id": 0})
# fetching average salary
avg_salary = dataframe["salary"].mean()
details = {"min": max_details, "max": min_details, "avg": avg_salary}
# converting details to json
json_string = pd.io.json.dumps(details, orient="records", indent=4)
with open('temp/details.json', 'w') as file:
file.write(json_string)
df = pd.read_json("temp/details.json")
# converting details to csv
csv_data = df.to_csv("temp/details.csv", index=False)
return csv_data
import pandas as pd
from fastapi import FastAPI
import json
from fastapi import FastAPI, Response
from mongoengine import connect
from script.config.appconfig import db_name
from script.core.engine.models import table_1, insert_post
from mongoengine import connect
from script.core.handlers.min_max import extract_min_max
from script.core.handlers.reading_csv import csv_read
from script.util.mongo_util import mongo_connection
......@@ -25,25 +25,10 @@ async def get_element():
# for getting mix max avg
@app.get("/get_minmax", tags=['FIRST'])
async def get_minmax():
datas = collection_name.find({})
dataframe = pd.DataFrame(list(datas))
# fetching min salary
min_salary = dataframe["salary"].min()
min_details = collection_name.find({"salary": min_salary}, {"_id": 0})
# fetching max salary
max_salary = dataframe["salary"].max()
max_details = collection_name.find({"salary": max_salary}, {"_id": 0})
# fetching average salary
avg_salary = dataframe["salary"].mean()
details = {"min": max_details, "max": min_details, "avg": avg_salary}
# converting details to json
json_string = pd.io.json.dumps(details, orient="records", indent=4)
with open('temp/details.json', 'w') as file:
file.write(json_string)
df = pd.read_json("temp/details.json")
# converting details to csv
df.to_csv("temp/details.csv", index=False)
return "data fetched"
csv_data = extract_min_max(collection_name)
return Response(content=csv_data, media_type="text/csv", headers={
"Content-Disposition": "attachment; filename=data.csv"
})
# insert many -->post
......
......@@ -4,4 +4,3 @@ min,max,avg
,,101695.24
0.0,0.0,101695.24
,,101695.24
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment