Inspiration

Through the process of brain-storming, we found out that we all wanted to apply our coding skills to the scientific area. Eventually, we have decided to focus on building a project that helps doctors during the COVID-19 pandemic.

Currently, there is a lack of concrete data on Covid-19, and it is difficult for doctors to decide on medications to give to their patients. Since this is an evolving area of science and research on Covid-19 is still ongoing, we aimed to create a database and analysis tools for clinicians to use in treating this disease. This database containing patient health data will allow more research to be done so that we know the best way to respond to the virus. This project would help doctors identify at risk individuals and help medical researchers identify trends in medical data associated with Covid-19. We also hope that having a database of the medications provided for patients with certain health conditions and lifestyle choices (smoking etc) will greatly increase the efficacy of future treatments, and contribute to global efforts in stepping out of this pandemic.

Interestingly we all had Python coding knowledge, but skilled in different areas (i.e. creating and formatting CVS, creating and analysing graphs). Hence, we have created a project that has put to use the different coding aspects together.

What it does

Clinicians will confidentially fill in patient health data and contribute to the database. The database does not require details such as the individual’s name which might help them to be identified. Researchers can then use this database to figure out the main risk factors of the viral disease and also the common treatments that are given to patients with certain risk factors or health conditions.

The form asks for information about the patient (i.e. age, weight, smoker/non-smoker, gender, etc.), which gets converted into a CSV file and stored in the same location as our project. From the data for height and weight, the BMI is calculated and added to the CSV.

This function is placed inside a while loop which will keep on running until the user answers no to the question: “Do you want to keep on adding more data?”, in order for the doctors to put in data consequently. Then, the data from the CSV file is converted into a visual graph format, aiding the researchers to figure out whether certain factors contribute more heavily to the infection of the disease.

Researchers can use their own methods of analysis on the database, but we have also coded some analysis on the CSV file with visual graphs to aid researchers. First, you can look at different group percentages with Covid-19 (e.g. percentage of people in the database with Covid 19 that have cancer). You can then look at graphs against severity of symptoms. This includes analyzing graphs based on age, temperature, BMI etc. against severity of symptoms to see if they have any correlation. Lastly, you can look at percentages of subsets of the data (e.g. percentage of smokers with Covid-19 amongst females aged 20-30). These statistical analyses can allow the clinicals to identify new trends in Covid-19 diagnosis and treatments which will be integral to curing the disease and battling the pandemic.

Challenges We Faced

We ran into many challenges, some simple ones and some more complicated ones. Early challenges included providing a scale for Covid-19 symptoms so that the data could be analysed easier. We researched a scale for the severity of symptoms, but were wondering how to display the scale alongside the option for the clinical to be able to pick numbers based on the severity. Eventually, we found a solution by coding for a dropdown function where we could display the number for the scale of severity and also display the symptoms associated with the scale.

At the beginning we used a simple input() function to prompt the user to enter data. However, after researching together as a team we discovered a good documentation on a "Form" specific to Google Collab which allows us to create drop-down boxes.

Later challenges included formatting the database and adding data to it without affecting previous entries. We realised we had to remove a header that was being added with each new entry. We also made changes to the code for saving the entries into a CSV file, which prevented a new file from being created every time the code was run. There were also challenges trying to look at subsets of data but we worked through these effectively asking each other for help.

How we built it

We initially wrote the codes on Python, and ran into challenges which included sharing the code with each other and building a form. Through research and mentor support, we found out about Google Colaboratory which allowed us to use Python code and work on the same file simultaneously. Since we are all mostly familiar with Python, this realisation was very helpful for us to collaborate on the same document. It also allowed us to use a form function (which is a language specific to Google Collaboratory) which is very useful as we wanted clinicians to be able to input patient data easily and make use of a dropdown function.

Accomplishments that we're proud of

We faced challenges well as a team and had good communication throughout to work through problems. We managed to divide up the tasks equally for efficient coding, but helping each other along the way by providing useful resources and links. We brainstormed potential ideas together and split the work into the code two section: form and analysis. Since we were all unfamiliar with AirMeet, we moved to Teams where we were able to comfortably share resources and ideas for each other’s section. This effectively allowed us to apply each other skills and knowledge to create a better program. We constantly held a small meeting during the day to ask or provide updates on the works that the small groups have done.

Originally our input section was text only, even for the questions which asked for symptoms of the patients. These questions which can have a broad range of answers was a huge problem for later creating graphs and analysing data. For example, some clinicians could use short forms of diseases, which would make it more challenging to categorize data and do the analysis. However, through joint-effort we managed to find a solution to this. Although none of us had knowledge of the Google Collab language, we read through the documentation thoroughly and managed to incorporate it well with the python programme; as a result we managed to create a fully functioning drop-down menu which solved the problem of inconsistency among clinicians. We strongly believe that we have created a useful hack that would contribute to Covid-19 efforts and are proud to have amalgamated our knowledge in the various aspects of programming to create a fully functioning program.

What we learned

We learned how to create forms on Google Colab and successfully create a CSV file for our Covid Database. We also learned how to analyse subsets of the database to do deeper research on our data with bar, and scatter charts. Including adding the drop down function in graphs, so data can easily be viewed and compared by medical professionals and researchers. For some of us it was the first time using matplot and conducting statistical analysis in Python, so we learnt the importance of working and collaborative together to share skills.

What's next for The Covid Database

Adding more methods to analyze the data, and more columns in the database so that we can study more patterns the virus might have (e.g. blood pressure). We could clarify a time for when this data is recorded (e.g. virus is at its peak, time when patient displays the most symptoms), or which vaccination the patient was dosed with. There are many ways to improve on the data collected in the database to make it include more groups and include more detail on the groups existing and that would be the next step. Adding new categories of data would enable clinicians to choose a wider range of factors to investigate, which could also be coded for in the statistical analysis section.

Furthermore, this format can also be modified to easily record and compare data for other diseases (e.g. cancer, HIV/AIDs or the common cold). Therefore, we created this program as a starting point for a Covid-19 database, but would be very happy if more options could be added and if this program could be adapted for various diseases all around the world.

Built With

Share this project:

Updates