NodeInputReader
The NodeInputReader
class provides methods to retrieve node input in various formats, such as Files, Tables, and Data objects.
Methods
inputAsFile(): File
inputAsFile(): File
Gets the node input as a File object.
var fileInput = NodeInputReader.inputAsFile();
// Use the 'fileInput' File object in your code
inputAsDataFrame(page: Integer, limit: Integer): Table
inputAsDataFrame(page: Integer, limit: Integer): Table
Gets the node input as a Table object that can be queried and read. This method is useful for working with data in a tabular format.
Parameters
page
(Integer): The page number for data pagination.limit
(Integer): The maximum number of rows to retrieve.
var page = 1;
var limit = 10;
var tableInput = NodeInputReader.inputAsDataFrame(page, limit);
// Use the 'tableInput' Table object in your code
inputAsDataObject(): JsonNode
inputAsDataObject(): JsonNode
Gets the node input as a Data object that can be read.
var dataObject = NodeInputReader.inputAsDataObject();
// Use the 'dataObject' JsonNode in your code
inputAsFileIndex(index: Integer): File
inputAsFileIndex(index: Integer): File
Gets the node input as a File object by an index. This is used when there are multiple inputs.
Parameters
index
(Integer): The index of the input.
var inputIndex = 0;
var fileInput = NodeInputReader.inputAsFileIndex(inputIndex);
// Use the 'fileInput' File object in your code
inputAsDataFrameIndex(index: Integer, page: Integer, limit: Integer): Table
inputAsDataFrameIndex(index: Integer, page: Integer, limit: Integer): Table
Gets the node input as a Table object by an index and allows for pagination when working with large datasets. This is used when there are multiple inputs.
Parameters
index
(Integer): The index of the input.page
(Integer): The page number for data pagination.limit
(Integer): The maximum number of rows to retrieve.
var inputIndex = 0;
var page = 1;
var limit = 10;
var tableInput = NodeInputReader.inputAsDataFrameIndex(inputIndex, page, limit);
// Use the 'tableInput' Table object in your code
inputAsDataFrameTotalRows(index: Integer): Integer
inputAsDataFrameTotalRows(index: Integer): Integer
Gets the number of parts the DataFrame has by index.
Parameters
index
(Integer): The index of the input.
var inputIndex = 0;
var totalRows = NodeInputReader.inputAsDataFrameTotalRows(inputIndex);
// Use the 'totalRows' Integer in your code
inputAsDataFrameTotalRows(): Integer
inputAsDataFrameTotalRows(): Integer
Gets the number of parts the DataFrame has.
var totalRows = NodeInputReader.inputAsDataFrameTotalRows();
// Use the 'totalRows' Integer in your code
inputAsDataFrameByIndexPartsCount(index: Integer): Integer
inputAsDataFrameByIndexPartsCount(index: Integer): Integer
Gets the number of parts the DataFrame has by DataFrame index.
Parameters
index
(Integer): The index of the DataFrame.
var inputIndex = 0;
var partsCount = NodeInputReader.inputAsDataFrameByIndexPartsCount(inputIndex);
// Use the 'partsCount' Integer in your code
inputAsDataFrame(): Table
(Deprecated)
inputAsDataFrame(): Table
(Deprecated)Gets the table object. This method is deprecated and should not be used. Instead, use inputAsDataFrameIndex()
with page and limit for more controlled data retrieval.
Examples
Example: Get Columns Max Value
Description: This script retrieves the maximum value from the 6th column of an input table.
Use Case: Useful when you need to find the highest value in a specific column of a dataset.
// Get a copy of the table reference from the previous node
var table = NodeInputReader.inputAsDataFrame(0);
//Get a new table sorted by the sixth column descendant (-6 means desc, 6 means asc)
table = table.sortOn(-6);
//Get the values of the 6th column from the first row (Index 0)
var maxValue = table.column(6).get(0);
Example: New Table Filtered
Description: This script filters a table based on a condition, creating a new table with filtered data.
Use Case: Ideal for data preprocessing and filtering based on specific criteria.
//Get a copy of the table reference from the previous node
var table = NodeInputReader.inputAsDataFrame()
//Gets the 4th column as String
var stringColumn = table.stringColumn(4);
//Return a new table with only value: female filtered
return table.where(stringColumn.endsWith("female"));
Was this helpful?