Giter Site home page Giter Site logo

covid-analyzer's Introduction

Table of contents

General info

A project aimed at collecting up-to-date data on the coronavirus pandemic and predicting new cases for the next few days. Additionally, the data collected with the prediction are automatically placed on the website. In future page will be probably developed to make easy access from anywhere.

Packages

Project has created with:

  • BeautifulSoup
  • SqlAlchemy
  • Tensorflow
  • Pmdarima
  • Flask
  • SMTPlib

Setup

All .py files must be in one directory. Depending on the path to the directory, change the .bat file (this is described in "Periodic data download"). To run the program, run the main.py file which is responsible for downloading data and uploading them to the database. The page.py file is responsible for launching the website. Before used code, you have to prepare setup.py file. There are a few important fields:

  • Country - choose a country to scrap data, insert to database etc.
  • scrap_time - different countries have different upload-data times.
  • forecast_hor - how many days you want to predict in future (too high value will make the network useless)
  • db_name - name of the database to be created and connected in the future where the data will be stored

Prediction

The following prediction functions have been implemented in this project:

  • ARIMA - Autoregressive integrated moving average is trying to forecast a future cases. ARIMA models are applied in some cases where data show evidence of non-stationarity in the sense of mean. Actually the best solution which is used. Implemented from pmdarima.
  • LSTM - Short-term memory neural network with tensorflow. The network was taught with 75% of the collected data (the remaining 25% is the test kit). The learned model can be used as simple predictor, but it has a large error, because we don't have enough data for good learning and new cases depend on things, which I do not collect (e.g. lockdowns information, possible virus migration, temperature etc). It's just a simple project to get to know neural networks better).

Periodic data download

Currently I'm working on making full-automatically system to download data based on Raspberry.

covid-analyzer's People

Contributors

leghart avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.