Pandas Iat Int
The node that turns a table cell into a number you can actually use
- dataframe
- INT
Pandas Iat Int grabs one cell from a DataFrame by row and column position and hands it back as a Python int. It's the integer member of the pack's cell-extraction trio (Pandas Iat Float and Pandas Iat Datetime are its siblings), built on pandas' positional iat accessor. Small node, and the whole point is bridging table-land to scalar-land: pull one value out of a frame and feed it into any node that wants an integer.
This is the node for "the answer lives inside the data, and the data should drive the graph." Say you ran an aggregation - a count, a rank, a year - and the number you care about is sitting in one cell of the result frame. Instead of eyeballing it off a display and retyping it into a widget, extract it with this node and wire it straight into whatever needs an INT input downstream. It's the difference between a workflow that recomputes everything when the data changes and one that silently carries a stale hardcoded value.
How it works
dataframe.iat[row_integer_position, column_integer_position] wrapped in int(value). Positional and 0-based: row 0, column 0 is top-left. The int() cast truncates rather than rounds - a cell holding 4.9 comes out as 4, not 5 - which is a genuine gotcha if you were expecting a round. Cells that are genuinely float-typed integers (4.0) cast cleanly; NaN, None, or non-numeric text raise a ValueError. So this node wants integer-valued cells, and it will quietly floor your floats if you feed it those.
Because it's positional, it's order-sensitive: any sort, filter, or group-by upstream changes what sits at row N. For lookups by name instead of position, use Pandas At Int - the At family is the label-based twin and the safer choice when your frame's order isn't guaranteed. Iat is the right tool when the frame is stable and you know precisely where the value lives.
Inputs and outputs
- dataframe (required,
DATAFRAME) - the frame to look into. - row_integer_position (required,
INT, default 0) - the 0-based row. - column_integer_position (required,
INT, default 0) - the 0-based column. - INT output - the cell's value as an integer, wireable into any integer input.
Installing it
Same pack install as the rest of the family. ComfyUI Manager → search "Data analysis" → install ComfyUI-Data-Analysis → restart → reload the browser. Manual:
cd ComfyUI/custom_nodes
git clone https://github.com/HowToSD/ComfyUI-Data-Analysis
mv ComfyUI-Data-Analysis data-analysis
pip install -r data-analysis/requirements.txt
Requirements: pandas, matplotlib, seaborn, scipy, scikit-learn, openpyxl, lxml. No GPU, no model downloads. When this node fails it's a data-shape problem - wrong position, NaN cell, or a text value - not a package problem. Confirm the cell with a show node first if you're unsure.
Inputs (3)
| Name | Type | Default | Description |
|---|---|---|---|
| dataframe | DATAFRAME | — | |
| row_integer_position | INT | 00–2147483648 | — |
| column_integer_position | INT | 00–2147483648 | — |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| INT | INT | — |