Replacing values within a list

Dear KNIME community,

I am currently trying find an efficient way how I can replace alll values in a table, with corresponding values from a different table. The table consist of ID values, that are all correctly sorted. Now I would like to replace these ID values with new, corresponding values from another table.  The cell replacer node only allows to replace one column at a time, but I have at least 30 columns. I tried to use the column aggregator, which gives me all values in one column, each row consisting of a list of ID values. Is there any way how I could replace these ID values in this list?

Thanks in advance!

Hi,

I was thinking you could use something like this:

Line Plot

The Column List Loop Start node allows you to easily include all columns whose content you need to replace and loops one by one through them. The current column name is passed as Flow Variable to Cell Replacer node which replaces all the ID's according to the ID replacement table. Finally the Loop End (Column Appender) appends each replaced column to the final output.

I have attached an export of the test Workflow for your convenience. Is this what you wanted to achieve?

Cheers,
Marco. 

1 Like

Dear Marco,

thank you very much! This is exactly what I've been looking for. I have already asked other users but so far have gotten no reply, but is there any tutorial or learning document you could recommend regarding KNIME? I am obviously still not familiar with the basics of KNIME and I am trying to evolve my understanding of this software. What prerequisite knowledge can you recommend for operating KNIME efficiently?

Best,

Dispu

Hi Dispu,

If you are just starting with KNIME do not feel bad about not coming up yourself with the solution above. It uses a couple of advanced concepts, namely loops and workflow variables, which probably you haven't looked into yet.

I think working with KNIME is a bit like playing with Lego. First you have to imagine what you want to build (end-state), then you have to find the right bricks (nodes) to build it, finally you have to assamble them together (workflow) to achieve the final result. It usually takes a bit of trial and error. Also there is not one single way to get to a given result and I can tell your for sure that also the most experience users learn something new every day.

There are few steps I can recommend you to learn KNIME (not necessarily in this order):

  • Go through all the material on knime.org's Getting Started page, that's a good starting point.

Shameless promotion: I have also written myself 4 introductory tutorials to KNIME which you can find on my blog here http://marcoghislanzoni.com/blog

  • Browse through the KNIME node description here: https://www.knime.org/files/node-documentation/index.html

These are the same descriptions you find within KNIME when you select/click over a node. The challenge is to find which nodes to focus on since there are quite a number of them (and that's an understatement). Starft with IO, Manipulation, Analytics, Views, Reporting; then look at Workflow Control, KNIME Labs, Community Nodes. 

  • Study the Example Workflows which you can access direclty from KNIME by connecting to the EXAMPLES server. They are very well documented and you can play with them by altering the input data, the configuration of the nodes, adding/removing nodes, etc.
  • Read some of the White Papers published by KNIME. They are very well written and contain an in-depth explanation of how the problem was analysed and solved with KNIME. You can find them here: https://www.knime.org/white-papers

Some of the White Papers are slightly outdated but still valid.

  • You can watch some videos from the KNIME TV on YouTube and/or purchase one of the KNIME publications from KNIME Press.

But first and foremost, I recommend you to play a lot with KNIME. Find some interesting data analysis problems, get some sample data sets (the classical Iris or others) and use KNIME to solve them. At the beginning you will struggle to "visualize" a solution and find the right nodes, but eventually you will crack the code and become proficient. If you have a programming or data analysis background you will go quicker, but it is not strictly necessary if you ask me.

If you get stuck, you can always ask on this forum. There is plenty of experts willing to help you. Just make sure you explain properly what you are trying to achieve and what your issue is. If possible attach your partial workflow and your test data to the post so someone else can quickly import it directly in their KNIME and show you how to fix it.

Sorry, this was a lengthy answer to a simple question. Enjoy learning KNIME! :-)

Cheers,
Marco.

1 Like