You don't have to be a data scientist or engineer to build your own custom KPI report. You can implement this one in Microsoft Excel, if you prefer something simple and spreadsheet-like. However, spreadsheets have important limitations, especially if you want to automate your work.
Alternatively, you can use Jupyter notebooks for a more robust tool that lets you get your hands dirty with code. But to use a notebook, you need to know how to write Python.
If you're looking for something powerful but that does not require technical skill, Cascade allows users to build custom visualizations of their KPIs—all without writing code.
Excel or Google Sheets
Dashboards are relatively simple to create in Excel or Google Sheets, but they come with some major drawbacks. To build your dashboard in Excel:
- Import the data from a CSV file
- Create a pivot table from the imported data, which will create columns and rows based on your chosen dimensions (like, "State" and "Year").
- Use charts to visualize the data for each state and year (in this case, we're using bar charts).
- Use filters to narrow down the data you want to see on your report—for example, only show states where there were more than 50 cases of influenza A between 2013 and 2015
Excel dashboards come with some import drawbacks that should be considered:
- Data size is limited: if you have more than 50,000 records (or 1m for Excel desktop), you'll break spreadsheets. Even for data sizes that are much smaller, the apps start to slow down dramatically
- They're editable by anyone: if you share the spreadsheet, keep in mind that they may be able to break it in subtle ways
- They're not automatic: you'll need to manually refresh the data every time
Jupyter notebooks are interactive documents that combine code, text and visualizations. They allow you to explore data, build models and share results as static figures, presentations or reports.
If you’re new to Jupyter notebooks, here are some tips for getting started:
- Make sure you have the right software installed. If you don’t already have Python installed on your computer then you can install it here. Once you have Python set up properly then install Jupyter notebook by typing `pip install jupyter`.
- Open up a terminal window (Mac) or command prompt (Windows). You can find these in your menu bar under utilities or programs respectively depending on which OS platform you use.
- Type 'jupyter notebook' into the terminal window/command prompt followed by hitting enter/return key twice; this will open up a browser window with an interface where you can create and run Jupyter notebooks from your local machine!
Cascade.io no-code data apps
Cascade.io is a no-code data app that allows you to build dashboards in minutes. It's cloud-based, so there's no need to install anything. Cascade is designed to be easy to use, so it's great for non-technical users as well as data analysts and developers who want an easier way to build and share custom reports.
To build your report in Cascade's workflow tool:
- Import your data from a database or some other source
- Transform your raw data using Excel formulas in Cascade's Edit Columns feature, or another of Cascade's long list of tools
- Aggregate your data into KPIs using pivot tables
- Visualize your results and publish them as a data app
- Set your workflow on a schedule to ensure data is always up to date
Ultimately, you can create interactive KPI dashboards that look like this:
Build a custom KPI report using the tool that's best for you.
You should use the tool that's best for you.
Excel is good for simple reporting, Jupyter notebooks are great for complex analysis, and Cascade.io is a good choice if you want to build no-code apps without programming.
If you are looking for a tool to help with your custom KPI reports, Excel is a good starting point. Jupyter notebooks can be helpful in more advanced cases, but they have their own limitations and may not be right for everyone. Cascade.io's platform is also an option that offers many advantages over other tools, including ease of use and integration with other applications.