TM1py

Data Science Strikes Back

Episode-5A.jpg

Data science uses scientific methods such as statistics and mathematics to inform and more importantly provide guidance based on trends, behaviours and analytics of a company’s data. Many organisations are still not embracing the power of Data Science an overlook the fact that it can help them solve many problems by using a broad range of interfaces and techniques available in today’s Data Science world.

From interactive notebooks like Jupyter, instant visualisations like Plotly, forecast models such as Prophet or even using machine learning, the Data Science landscape provides access to the right technology at every stage along the journey.

We have mentioned this before… “having accurate data in your TM1 and Planning Analytics system is just one part of the job, the second part which is even more important is to understand your data. This is where Data Science can help. Data Science will help you to improve how you make decisions by better understanding the past and predicting the future…Read the complete post on Data Science here.

Watch Episode V

We invite you to watch this video and realize the huge potential of combining the best of two worlds, Planning Analytics/TM1 and Data Science.  

 

Next Episode

Understand and see what it is out of the possible when web frameworks are used to create sophisticated PA/TM1 applications.

  • Canvas for PA/TM1

  • AngularJS and Bootstrap

  • Google maps, SheetJS and much more

Data Science with TM1 and Planning Analytics

Having accurate data in your TM1 and Planning Analytics application is just one part of the job, the second part which is even more important is to understand your data. This is where Data Science can help. Data Science will help you to improve how you make decisions by better understanding the past and predicting the future.

Combine the best of two worlds

On one side, IBM TM1 and Planning Analytics has been very successful over the years mainly for its strong planning and reporting capabilities and on the other side Python is becoming more and more popular thanks to its unique Data Science eco-system. Now with the free Python package TM1py, you can combine the best of these two worlds.

Open the Python community to TM1/Planning Analytics

TM1py makes it easy to do Data Science such as statistics or time series forecasting with your TM1 and Planning Analytics application by opening the Python community to IBM TM1 and Planning Analytics.

A whole new world of free tools to boost your IBM TM1 and Planning Analytics application.

The Python community is very creative in terms of Data Science, there are lots of free tools for data exploration such as Pandas and Plotly or for timeseries forecasting such as Facebook Prophet. All these packages are free and ready-to-use!

For example, with a few lines of code you can use the Ploty package to build interactive charts:

Do the same things but smarter!

Free-up your time by automating repeated tasks, TM1py will enable you to do things smarter such as uploading daily exchange rates from a webservice or automating your daily forecast by using Facebook Prophet:

A Step-By-Step Guide To Data Science with TM1/Planning Analytics

To see data science with TM1 and Planning Analytics in action, we created a series of three articles which will guide you step by step through your first data science experience. In Part 1, you will load weather data from a web service into your TM1 cube, in Part 2, you will then explore your data using Pandas and Ploty and finally in Part 3, you will use time series forecasting using Facebook Prophet:

How Cubewise CODE has revolutionized TM1 Planning Analytics in 2017

A lot happened in 2017 in the IBM Planning Analytics (TM1) world. Here is a quick recap from Cubewise CODE.

Pulse: Centralized Database Architecture

Pulse take up continues to grow beyond 150 customers globally allowing our customers to watch over a combined total of well over 50 million lines of TM1 code. Accordingly, the number of “large enterprise” TM1 implementations has increased necessitating support for MS SQL Server. The latest version,  Pulse v5.6,  incorporates a centralized database architecture which brings downstream benefits such as forensic TM1 server and user reporting via Big Data provider, Elasticsearch. This version is a big step forward for Pulse in the cloud.

Canvas v2 Released

Canvas v2 was a major milestone in the maturity, scalability and stability of the product. This new version introduced lots of new features such as:

A new way to integrate systems with your IBM TM1 Planning Analytics application

TM1py is a free Python package that wraps the TM1 REST API in a simple to use library. Making it easier to integrate systems more effectively with IBM Planning Analytics.

Speed up your IBM Planning Analytics development with our free products

Bedrock, TM1Kill, Hustle and many more other free products will save you lots of time as a TM1 developer:

Cubewise EDU Conferences and Training

In 2017, we hosted more than 500 paying delegates at our IBM Planning Analytics conferences in Sydney, London, NYC and Los Angeles. To learn more about our products, training is now available from the Cubewise EDU page.

conferencesflat.png

Looking forward to 2018

2017 was a great year for the TM1 community and Cubewise Code. We are looking forward to 2018 and making IBM Planning Analytics even better!

READ MORE:

Getting started with TM1py

TM1py is a free Python package that wraps the TM1 REST API in a simple to use library. Making it easier to integrate systems more effectively with IBM Planning Analytics.

Why you should use it?

  • Load FX rates from web services such as FRED into the TM1 Server.
  • Greater automation of your forecast models with Pandas for Data Analysis and Statistics.
  • Advanced integration with machine learning and forecasting algorithms with Python, scikit-learn and the TM1 Server.

Getting Started!

TM1py is really quick and easy to setup, just follow these steps and you will be able to run your first Python script in less than 5 min!

1. Install TM1py

The first step is to install Python and TM1py. These steps are explained on the TM1py-samples github page.

2. Enable the TM1 REST API

TM1py uses the TM1 REST API to connect to the TM1 Server, you will need to enable the TM1 REST API on each instance where you want TM1py to connect to.

3. Download TM1py samples

TM1py includes a lot of ready to use samples that you can download on Github.

4. Run your first Python script

Ever wondered which of the dimensions in your TM1 instance are not used in cubes? TM1py can help to answer this questions with 8 Lines of code! Just follow these steps to know which dimensions are not used in your TM1 application.

5. Learn More

Do more with TM1 with Python

TM1py (pronounced "TM1-pie") is a Python package that wraps the TM1 REST API in a simple to use library. That makes it easy to build stuff with TM1 and Python.

Python is a widely-used general-purpose high-level programming language that lets you work quickly and integrate systems more effectively. We believe Python can be a valuable extension to the TM1 ecosystem.

Get the best of TM1 and Python

Leverage TM1 with Python

Do statistical analysis and write machine learning on top of your TM1 application, these and many more are now easy to achieve with TM1py:

  • Use Pandas for Data Analysis and Statistics on top of your TM1 model.
  • Build Machine Learning and Forecasting Algorithms with Python and scikit-learn based on your TM1 data.
  • Load data (e.g. FX, stock data) from webservices into TM1.
  • Synchronize cubes throughout TM1 instances.
  • Get insights from your TM1 model. (e.g. Which views use this subset?, which process has an ODBC Datasource?).
  • Export TM1 data to XML, JSON, YAML, XLSX, …
  • Generate MDX Queries from cube views.

Get started

TM1py is licensed through an MIT license and can easily be downloaded though the python packaging system. To get started we recommend downloading the samples from Github and play around with it.
If you have questions or remarks on TM1py it’s best to communicate through Github. 

With a few lines of codes you can achieve a lot. For example the code below reschedule all chores for one instance by -1 hour:

with TM1Service(address='localhost', port=8001, user='admin', password='apple', ssl=True) as tm1:
    for chore in tm1.chores.get_all():
        chore.reschedule(hours=-1)
        tm1.chores.update(chore)

Contribute

TM1py is an open source project, just like Bedrock. It thrives on contribution from the TM1 community.
If you find a bug or feel like you can contribute please fork the repository, update the code and then create a pull request so we can merge in the changes.