Using KNIME Recursive Loops with a GraphQL API

Introduction This guide will show you how to use a recursive loop to download data from an API. I my case I’ll be using a GraphQL API but the approach would work in a similar way for any other REST API. This guide will not go into the details about the workings of GraphQL as …

Dynamically Output to Multiple Files in KNIME

The Problem How to output to multiple files with dynamic contents and unique names using KNIME without hardcoding filters and using multiple branches? Loops, you need loops. Coming from Alteryx that doesn’t have loops (you are required to use macros to achieve the same effect) it took me a while to understand KNIME loops. But …

KNIME Database SQL Filter using the IN Operator

Sometimes using KNIME it would be nice to create a DB row filter based on a list of items. When not using DB tools you can use the reference row filter but this cannot be used with DB connections. The other standard method would be to use the DB Row Filter but this only supports …

Default Include or Exclude New Columns in KNIME

It’s common when creating a new workflow that after the flow is finished the source data can change. The most common scenario is when connected to a database table or view and the data gets extra columns added. In this scenario you need to make sure that your workflow doesn’t break caused by the introduction …

Getting OP_RETURN Bitcoin Messages

This is mainly a note to myself as every time I want to do this I end up searching through my history doing something like this. So here’s the code to extract the OP_RETURN message from the bitcoin blockchain. This needs to be run on the machine running your full node. The output looks like …

Compound Improvements

The easiest way to earn money, improve a product or learn new skills is very simple. Compounding. If you invest money today in an Index fund and just leave it for 30 years you’ll probably be shocked how little it increases in the first 20-25 years and how much it increases after that. Even a …

Common Data Mistakes

This isn’t meant an an exhaustive list but just the most common errors I’ve seen over the years. Taking the average of values that are already an average Trying to join database tables on fields with different data types Processing data you will later discard, do filtering early on Using averages when mean or mode …

Money As Data

Current ‘Digital’ Money As much as many people use banking apps and send money via their smartphones, money isn’t really digital yet. What do I mean by ‘not digital’? Of course it doesn’t mean you need to physically transfer paper money and metal coins to buy a coffee. You can of course do this digitally …

Delete Files Using Alteryx

Yet another custom tool for Alteryx to fill a hole in the file handling capabilities without resorting to using the Run Command tool. Available to download and install from Github (https://github.com/bobpeers/Alteryx_SDK_Delete) or you can grab a sample workflow including link to the tool from the Alteryx Public Gallery (https://gallery.alteryx.com/#!app/File-Delete/5f4770d8826fd309c4f9e427) The tool uses the standard Python …

Credentials – Custom Alteryx Tool

Why Saving Credentials is Hard 🔐 Saving credentials for use in an Alteryx workflow is a very common use case. Maybe you use an API and need to save Client keys or secrets and getting these credentials into a workflow without hard coding is tricky. It’s common to either read from a text file located …