SCMBench / service.py
zeisel's picture
Reinitialize project and track PNG via LFS
a6ec46c
import os
import pandas as pd
basePath = "./data/output/data/"
uploadPath = "./data/latents/"
# def toJson(data):
# return {
# "success": True,
# "data": data
# }
def getALlData():
files = os.listdir(basePath)
merged_df = None
for each in files:
df = pd.read_csv(os.path.join(basePath, each))
if merged_df is None: merged_df = df
else: merged_df = pd.concat([merged_df, df], ignore_index=True)
grouped_df = merged_df.groupby(['methods', 'datasets']).mean().reset_index()
grouped_df = grouped_df.fillna(0)
for col in grouped_df.select_dtypes(include=['float']).columns:
grouped_df[col] = grouped_df[col].round(4)
data = grouped_df.to_dict(orient='records')
return data
def getList(datatype):
if datatype == "Integration Accuracy":
file = "integration_accuracy.csv"
elif datatype == "Batch Correction":
file = "batch.csv"
elif datatype == "Bio Conservation":
file = "biomarker.csv"
path = os.path.join(basePath, file)
df = pd.read_csv(path)
df["object_type"] = datatype
data = df.to_dict(orient='records')
return data
def getListByName(file, name):
path = os.path.join(basePath, file)
df = pd.read_csv(path)
filtered_records = df[df['methods'] == name]
data = filtered_records.to_dict(orient='records')
return data
def uploadFile(uploadFiles):
for file in uploadFiles:
save_path = os.path.join(uploadPath, file.filename)
file.save(save_path)