diff --git a/scripts/combine54.py b/scripts/combine54.py new file mode 100644 index 0000000..a29ff5b --- /dev/null +++ b/scripts/combine54.py @@ -0,0 +1,67 @@ +import pandas as pd +import os +import numpy as np +import matplotlib.pyplot as plt + +curdir = os.getcwd() +path_delim = '/' +df1 = pd.read_excel(curdir + path_delim + "data/users_05_12_2023_19_13.xlsx", sheet_name="Sheet1") +df2 = pd.read_excel(curdir + path_delim + "data/tests_05_12_2023_18_27.xlsx", sheet_name="data") + +df2 = df2.sort_values('testTime') + +variance_column = df2["led2Buffer"].var(ddof=0) +print(variance_column) + +# Extract rows from df1 where 'bloodGroup' is present for duplicated entries +duplicated_ids = df1[df1.duplicated(subset=['_id'], keep=False)]['_id'] +df1_with_bloodgroup = df1[df1['_id'].isin(duplicated_ids) & df1['bloodGroup'].notna()] + +# Merge the relevant rows back into df2 +df2 = df2.merge(df1_with_bloodgroup, on='_id', how='left', suffixes=('', '_df1')) + +df = df2.merge(df1, on="_id", how="inner") +print(df) +# # df = pd.concat([df1, df3], ignore_index=True) +# df['Age'] = 2023 - df['birthYear'] + +# df['deviceId'].hist() +# # plt.show() + +# df = df[["_id", "name_x", "abhaId", "aadharId", "Age", "gender", "category", "maritalStatus", "house", "district", "state", "pinCode", "phoneNumber", "classificationResult", "bloodGroup", "testTime", "caste", "registrationCenterName"]] +# print(df) + +# df.rename(columns={'_id': "Sample ID", "name_x": "Name", "abhaId": "ABHA ID", "aadharId": "Aadhaar ID", "gender": "Gender", "category": "Category", "maritalStatus": "Marital Status", "house": "Address", "district": "District", "state": "State", "pinCode": "Pincode", "phoneNumber": "Mobile Number", "testTime": "Date", "classificationResult": "Test Result", "bloodGroup": "Blood Group", "Age": "Age", "caste": "Caste", "registrationCenterName": "Center"}, inplace = True) +# df = df.reindex(["Sample ID", "Name", "ABHA ID", "Aadhaar ID", "Age", "Gender", "Caste", "Category", "Marital Status", "Address", "District", "State", "Pincode", "Mobile Number", "Date", "Test Result", "Blood Group", "Center"], axis=1) + +# # df['Date'] = pd.to_datetime(df["Date"].dt.strftime('%d-%m-%Y')) + +# # df = df.sort_values(by=['Date'], ascending=True) + +# df["Test Result"].fillna("NOTEST", inplace = True) +# print("NOTEST: ", len(df[df["Test Result"] == "NOTEST"])) +# df = df[df["Test Result"] != "NOTEST"] + +# df["Blood Group"].fillna("NOBLOODGROUP", inplace = True) +# print("NO BLOOD GROUP: ", len(df[df["Blood Group"] == "NOBLOODGROUP"])) + +# df_final = df.sort_values('Date').drop_duplicates('Sample ID', keep='last') + +# df_final.loc[df_final['Test Result'] == 'Normal', 'Test Result'] = 'Normal (HbA)' +# df_final.loc[df_final['Test Result'] == 'Sickle Cell Trait', 'Test Result'] = 'Sickle Cell Trait (HbAS)' +# df_final.loc[df_final['Test Result'] == 'Sickle Cell Disease', 'Test Result'] = 'Sickle Cell Disease (HbAS)' +# df_final.loc[df_final['Test Result'] == 'SCT', 'Test Result'] = 'Sickle Cell Trait (HbAS)' +# df_final.loc[df_final['Test Result'] == 'SCD', 'Test Result'] = 'Sickle cell Disease (HbSS)' +# df_final.loc[df_final['Test Result'] == 'PBL', 'Test Result'] = 'Positive Borderline' +# df_final.loc[df_final['Test Result'] == 'NBL', 'Test Result'] = 'Negative Borderline' +# df_final.loc[df_final['Gender'] == 'Male', 'Gender'] = 'MALE' +# df_final.loc[df_final['Gender'] == 'Female', 'Gender'] = 'FEMALE' +# print(df_final.groupby(["Test Result"]).describe()) + +# df_count = df.groupby(["Test Result"]).describe()["ABHA ID"]["count"] +# print(df.groupby(["Test Result"]).describe()["ABHA ID"]["count"]) + +writer = pd.ExcelWriter(curdir + path_delim + "data/Dec05a.xlsx", engine = 'openpyxl') +df.to_excel(writer, sheet_name = 'op', index=False) +# df_count.to_excel(writer, sheet_name = "count") +writer.close() \ No newline at end of file