This node allows executing a Python script in a local Python 3 environment. The script can read data from the input ports and must provide an output view.
Use the settings menu in the top right of the editor window to configure which Python environment to use. This environment can either be the one configured in the KNIME preferences under File → Preferences → KNIME → Python or be specified via a flow variable, as described in the KNIME Python Integration Guide. By default, the Python environment that is bundled with KNIME will be used so that you can get started right away.
Multiple input ports of various types can dynamically be added to the node and used in the
script. See sections Ports and Options → Script → Editor below for a description of all available inputs, and how
they can be accessed in the Python script.
Make sure to set the knio.output_view
variable to a view created with any of the knio.view
functions. You can see a preview of the generated view in Output preview tab of the panel right of the editor.
Furthermore, the node allows to import Jupyter notebooks as Python modules via the
knime.scripting.jupyter module that can be imported in the script.
See the
API Documentation for a detailed description of the full API.
The node brings significant performance improvements over the nodes of the legacy KNIME Python Integration and enables working with larger-than-memory data. More details on how to transition to the node's new scripting API can be found here. There are also example workflows that further illustrate its use here as well as example templates on the Templates tab of the node.
AI Code Assistance (Labs):If the KNIME AI Assistant (Labs) extension is installed, the button on the lower left of the code editor provides access to AI assisted code generation and modification. Here you can enter commands in natural language and our code assistant will replace or modify your current code according to your prompt. The more precisely you describe what results you expect, the better the results will be. The AI will suggest modifications and show them to you in a diff-view (differences between your current code on the left and the suggested code on the right) which you can apply or query another response by entering a new or refined prompt.
Please consider the following prerequisites before using this node:
conda create -n new_environment
-c knime -c conda-forge knime-python-scripting
or via File → Preferences → KNIME → Python as described in
the KNIME Python Integration Guide.knime.scripting.io
module (imported as knio
by default) to access the
node's input data and populate its output view as described in the Ports and Views sections below. Use the
knio.flow_variables
dictionary to access input flow variables by name and to add new output
flow variables by name.knio.input_objects
. For example, the first input object can be accessed like this:
knio.input_objects[0]
.knio.input_tables
. For example, the first input
table can be accessed like this: knio.input_tables[0]
. Each table is an instance of type
knime.api.table.Table
. Before being able to work with the table, you have to convert it into, for
example, a pandas.DataFrame
or a pyarrow.Table
. Please refer to the
KNIME Python Integration Guide to
learn how to do this, or take a look at one of the templates on the Templates tab of the node.knio.output_images[0]
in your script. To
populate the output image, assign it a value like this knio.output_images[0] = <value>
.
The assigned value must be a bytes-like object encoding a PNG or SVG image.
If no value is assigned to knio.output_images[0]
the node will try to generate an SVG or PNG
image from knio.output_view
.knio.view(obj)
function to create a view and
assign to knio.output_view
.You want to see the source code for this node? Click the following button and we’ll use our super-powers to find it for you.
To use this node in KNIME, install the extension KNIME Python Integration from the below update site following our NodePit Product and Node Installation Guide:
A zipped version of the software site can be downloaded here.
Deploy, schedule, execute, and monitor your KNIME workflows locally, in the cloud or on-premises – with our brand new NodePit Runner.
Try NodePit Runner!Do you have feedback, questions, comments about NodePit, want to support this platform, or want your own nodes or workflows listed here as well? Do you think, the search results could be improved or something is missing? Then please get in touch! Alternatively, you can send us an email to mail@nodepit.com.
Please note that this is only about NodePit. We do not provide general support for KNIME — please use the KNIME forums instead.