Nodes/ComfyUI-Data-Analysis/Pandas Load Excel
ComfyUI Node

Pandas Load Excel

Read an Excel sheet into a DataFrame, no export step needed

By HowToSD·Created 2 years ago·Updated about a year ago· 23
Pandas Load Excel
    • DATAFRAME
    file_path
    sheet_name

    Half the world's business data lives in Excel, and exporting it to CSV before you can analyze it is busywork. PandasLoadExcel reads a .xlsx file directly into a DataFrame - pick the file, optionally name a sheet, and the sheet becomes a table you can feed into the rest of the pack's pandas nodes. It's the node that gets you from "someone sent me an Excel file" to "I'm plotting it" with zero conversion steps.

    It's part of HowToSD's ComfyUI-Data-Analysis pack, Hide Inada's pandas/matplotlib/seaborn wrapper set for ComfyUI. No GPU, no models - but this one does pull in an extra dependency.

    How it works

    Under the hood it's pd.read_excel(file_path, sheet_name=sheet_name), which is why the extra dependency: reading .xlsx requires the openpyxl engine, and the pack's requirements.txt includes it. If you installed via ComfyUI Manager it's there automatically; if you cloned manually, pip install -r requirements.txt gets it - and if you skipped requirements, this node fails with a missing-module error.

    The sheet_name input is a string. Leave it empty and the first sheet is read; type a sheet name like "Sales 2024" to pick a specific one. (Under the hood, an empty string maps to 0, which is pandas' "first sheet" convention - you can also type an integer index there, but names are clearer.) The node re-reads the file every run, and relative paths resolve against the ComfyUI installation directory like the other loaders.

    The inputs that matter

    • file_path - the .xlsx location.
    • sheet_name - leave blank for the first sheet, or type the exact sheet name. Note: the pack also ships a Pandas Excel File Sheet Names node if you don't remember what a workbook's sheets are called.

    Output is a single DATAFRAME holding the sheet's data.

    Installing it

    Standard pack install. ComfyUI Manager: search "ComfyUI-Data-Analysis", install, restart - openpyxl and the rest of the dependencies come along. Manual route:

    cd ComfyUI/custom_nodes
    git clone https://github.com/HowToSD/ComfyUI-Data-Analysis.git
    pip install -r requirements.txt
    

    Then rename the folder to data-analysis so the example workflows resolve. License: custom non-commercial - personal and academic use is allowed, commercial use needs the author's written permission.

    Gotchas

    Sheet names are exact and case-sensitive - "sales" won't match "Sales" and you'll get a ValueError. Also, this node reads the sheet as a flat table: merged cells, formulas that haven't been calculated, and multi-row headers all come through messily or with NaN. pandas reads the stored value of a cell, so a formula shows its cached result, not a live recalculation - if the file was never opened and saved by Excel, that cache can be missing. And note it's .xlsx (modern) files that need openpyxl; legacy .xls files are a different engine and a different problem. For most cases though, this node just works - which is more than you can say for half the CSV loaders out there.

    CategoryData Analysis

    Inputs (2)

    NameTypeDefaultDescription
    file_pathSTRING
    sheet_nameSTRING

    Outputs (1)

    NameTypeDescription
    DATAFRAMEDATAFRAME