GithubHelp home page GithubHelp logo

lseg-api-samples / article.eikonapi.python.pandasgui Goto Github PK

View Code? Open in Web Editor NEW
2.0 5.0 2.0 4.21 MB

This example project demonstrates how to use the PandasGUI tool using The demo application uses Corona Virus Disease (COVID-19) data from Eikon Data API as an example of a dataset.

License: Other

Python 100.00%

article.eikonapi.python.pandasgui's Introduction

Using PandasGUI to analyze Pandas DataFrames on Graphical user interface

  • Last update: September 2021
  • Environment: Windows
  • Compiler: Python and Conda distribution
  • Prerequisite: Refinitiv Eikon or Refinitiv Workspace application with access to Eikon Data APIs.

Overview

With the rise of Data Scientists, Financial coders, or Traders (aka Citizen Developers), the Pandas library has become the defacto tool for data analysis with Python programming language. Pandas is powerful, flexible, has excellent community support, and it keeps improving. However, developers require a great skill of Python and the library to using Pandas efficiently. This learning curve makes some developers and data scientists stuck with the "coding" time instead of "analysis" time.

PandasGUI is the Graphical User Interface tool that can solve this learning curve issue. The tool wraps Pandas functions into an easy to use data analytic tool for developers and data scientists to start with. This example project shows how to use PandasGUI] too for the basic data analysis with the simple GUI interface. The demo application uses Corona Virus Disease (COVID-19) data from Eikon Data API as an example of a dataset.

Note: The PandasGUI tool is still under development. The tool is not compatible with Eikon Data API and Refinitiv Data Platform (RDP) Libraries - Python on IPython/Notebook environment yet. This example project is focusing on the console environment only.

Introduction to PandasGUI

PandasGUI is a GUI tool for analyzing Pandas DataFrames. The tool is developed by @adamerose. The tool comes with the built-in Pandas function that lets data scientists explore the DataFrame object, DataFrame manipulation, filter data, reframing DataFrame object, and also plotting a simple graph for visualization.

PandasGUI Demo

Note:

  • This project is based on PandasGUI versions 0.2.7.

Introduction to Eikon Data API

The Eikon Data API (aka DAPI) provides access to certain Refinitiv Eikon/Refinitiv Workspace data with seamless workflow with the same data across all applications running on the desktop. The API allows developers to tap into the full breadth of community tools through a modern API with native Python support.

Figure-1

If you are not familiar with Eikon Data API or Python, the following resources are highly recommended to read before you proceed with further steps.

Note:

Prerequisite

This example requires the following dependencies software and libraries.

  1. Refinitiv Eikon or Refinitiv Workspace application with access to Eikon Data APIs.
  2. Python Anaconda or MiniConda distribution/package manager.
  3. Internet connection.

Note:

  • This Project has been qualified with Python version 3.7.9 and Conda version 4.8.3

Please contact your Refinitiv's representative to help you to access Refinitiv Workspace/Eikon credentials. You can generate/manage the AppKey by follow the steps in Eikon Data API Quick Start page.

Application Files

This example project contains the following files and folders

  1. src/simple_covid_19_app.py: The example console application file that demonstrates USA COVID-19 data with PandasGUI.
  2. src/rcep_covid19_data_app.py: The example console application file that demonstrates RCEP (Regional Comprehensive Economic Partnership) countries COVID-19 data with PandasGUI.
  3. requirements.txt: The project dependencies configuration file.
  4. images: Project images folder.
  5. LICENSE.md: Project's license file.
  6. README.md: Project's README file.

Eikon Data API Setup

Please follow a step by step guide to setup your Eikon Data API and your AppKey in Eikon Data API Quick Start page.

How to run this example

Please note that the Refinitiv Workspace/Eikon application integrates a Data API proxy that acts as an interface between the Eikon Data API Python library and the Eikon Data Platform. For this reason, the Refinitiv Workspace/Eikon application must be running when you use the Eikon Data API Python library.

The first step is to unzip or download the example project folder into a directory of your choice, then set up a Conda environment for running the application with the steps below.

  1. Open Anaconda Prompt and go to the project's folder

  2. Run the following command in the Anaconda Prompt application to create a Conda environment named pandasgui for the project.

    (base) $>conda env create --name pandasgui python=3.7
    
  3. Once the environment is created, activate Conda environment named pandasgui with this command in Anaconda Prompt.

    (base) $>conda activate pandasgui
    
  4. Run the following command to install Eikon Data API, PandasGUI, and all dependencies in pandasgui environment.

    (pandasgui) $>pip install -r requirements.txt
    
  5. Go to the project's src folder. and create a file name credential.cfg with the following content.

    [workspace]
    app_id = YOUR_APP_ID_HERE
    
  6. Open and log in Refinitiv Workspace/Eikon application with your Workspace/Eikon credential.

  7. In the current Anaconda Prompt, stay in project's src folder. Run the following command to run example applications.

    (pandasgui) $>src>python simple_covid_19_app.py
    
    (pandasgui) $>src>python rcep_covid19_data_app.py
    

Example Results

Example of simple_covid_19_app.py Result:

Figure-2

Figure-3

You can interact with DataFrame, plotting a graph, etc. via the GUI directly.

Figure-4

Figure-5

Example of rcep_covid19_data_app.py Result:

Figure-6

Figure-7

Conclusion

PandasGUI tool provides a simple GUI interface that helps Data Scientists analyze data without requiring a great Python/Pandas programming skill. Data Scientists can just get the data and use the tool for data exploratory, creating simple visualize data, or exporting data to a CSV file. The PandasGUI tool lets everybody access Pandas built-in functions via the GUI which is suitable for a wide range of programming skills. The casual developers/data scientists can use PandasGUI as a starting tool for data analysis while the professional developers can use this tool for quick data checking. Please note that PandasGUI is under active development, we might see some more features in the coming days.

At the same time, the Eikon Data API lets developers rapidly access Refinitiv Eikon/Refinitiv Workspace data and our latest platform capabilities with a few lines of code that easy to understand and maintain.

References

You can find more detail regarding the PandasGUI, Eikon Data APIs, and related technologies from the following resources:

For any question related to this example or Eikon Data API, please use the Developers Community Q&A Forum.

article.eikonapi.python.pandasgui's People

Contributors

wasin-waeosri avatar

Stargazers

 avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  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.