Files
langflow/dataframe-operations.html
github-merge-queue[bot] b12d91c356 deploy: 2282740ff2
2026-01-06 21:12:59 +00:00

150 lines
41 KiB
HTML
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<!doctype html>
<html lang="en" dir="ltr" class="docs-wrapper plugin-docs plugin-id-default docs-version-current docs-doc-page docs-doc-id-Components/dataframe-operations" data-has-hydrated="false">
<head>
<meta charset="UTF-8">
<meta name="generator" content="Docusaurus v3.8.1">
<title data-rh="true">DataFrame Operations | Langflow Documentation</title><meta data-rh="true" name="viewport" content="width=device-width,initial-scale=1"><meta data-rh="true" name="twitter:card" content="summary_large_image"><meta data-rh="true" property="og:url" content="https://docs.langflow.org/dataframe-operations"><meta data-rh="true" property="og:locale" content="en"><meta data-rh="true" name="docusaurus_locale" content="en"><meta data-rh="true" name="docsearch:language" content="en"><meta data-rh="true" name="docusaurus_version" content="current"><meta data-rh="true" name="docusaurus_tag" content="docs-default-current"><meta data-rh="true" name="docsearch:version" content="current"><meta data-rh="true" name="docsearch:docusaurus_tag" content="docs-default-current"><meta data-rh="true" property="og:title" content="DataFrame Operations | Langflow Documentation"><meta data-rh="true" name="description" content="The DataFrame Operations component performs operations on DataFrame (table) rows and columns, including schema changes, record changes, sorting, and filtering."><meta data-rh="true" property="og:description" content="The DataFrame Operations component performs operations on DataFrame (table) rows and columns, including schema changes, record changes, sorting, and filtering."><link data-rh="true" rel="icon" href="/img/favicon.ico"><link data-rh="true" rel="canonical" href="https://docs.langflow.org/dataframe-operations"><link data-rh="true" rel="alternate" href="https://docs.langflow.org/dataframe-operations" hreflang="en"><link data-rh="true" rel="alternate" href="https://docs.langflow.org/dataframe-operations" hreflang="x-default"><link data-rh="true" rel="preconnect" href="https://UZK6BDPCVY-dsn.algolia.net" crossorigin="anonymous"><script data-rh="true" type="application/ld+json">{"@context":"https://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"DataFrame Operations","item":"https://docs.langflow.org/dataframe-operations"}]}</script><link rel="preconnect" href="https://www.google-analytics.com">
<link rel="preconnect" href="https://www.googletagmanager.com">
<script async src="https://www.googletagmanager.com/gtag/js?id=G-SLQFLQ3KPT"></script>
<script>function gtag(){dataLayer.push(arguments)}window.dataLayer=window.dataLayer||[],gtag("js",new Date),gtag("config","G-SLQFLQ3KPT",{})</script>
<link rel="search" type="application/opensearchdescription+xml" title="Langflow Documentation" href="/opensearch.xml">
<script>window._ibmAnalytics={settings:{name:"DataStax",tealiumProfileName:"ibm-subsidiary"},trustarc:{privacyPolicyLink:"https://ibm.com/privacy"},"digitalData.page.services.google.enabled":!0},window.digitalData={page:{pageInfo:{ibm:{siteId:"IBM_"+_ibmAnalytics.settings.name},segment:{enabled:!0,env:"prod",key:"B04fNhD06DqDPuaRfQl5lZ2iQICdxxuh",coremetrics:!1,carbonComponentEvents:!1}},category:{primaryCategory:"PC230"}},commonProperties:{productTitle:"IBM Elite Support for Langflow",productCode:"5900BUB",productCodeType:"WWPC",UT30:"30AS5",instanceId:"docs-site",subscriptionId:"public-access",productPlanName:"Public",productPlanType:"freemium",userId:"IBMid-ANONYMOUS"}}</script>
<script src="//1.www.s81c.com/common/stats/ibm-common.js" async="true"></script>
<link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Sora:wght@550;600&amp;display=swap">
<script>function gtag(){dataLayer.push(arguments)}window.dataLayer=window.dataLayer||[],gtag("consent","default",{ad_storage:"denied",ad_user_data:"denied",ad_personalization:"denied",analytics_storage:"denied"})</script>
<script>!function(){function e(){if(void 0!==window.truste&&window.truste.cma){var e=window.truste.cma.callApi("getConsent",window.location.href)||{},n=1===e[2],t=1===e[3];gtag("consent","update",{ad_storage:n?"granted":"denied",ad_user_data:n?"granted":"denied",ad_personalization:n?"granted":"denied",analytics_storage:t?"granted":"denied"})}}window.addEventListener&&(window.addEventListener("cm_data_subject_consent_changed",e),window.addEventListener("cm_consent_preferences_set",e)),"complete"===document.readyState?e():window.addEventListener("load",e)}()</script><link rel="stylesheet" href="/assets/css/styles.5b49702d.css">
<script src="/assets/js/runtime~main.1ce3b1ea.js" defer="defer"></script>
<script src="/assets/js/main.1006dc4e.js" defer="defer"></script>
</head>
<body class="navigation-with-keyboard">
<svg xmlns="http://www.w3.org/2000/svg" style="display: none;"><defs>
<symbol id="theme-svg-external-link" viewBox="0 0 24 24"><path fill="currentColor" d="M21 13v10h-21v-19h12v2h-10v15h17v-8h2zm3-12h-10.988l4.035 4-6.977 7.07 2.828 2.828 6.977-7.07 4.125 4.172v-11z"/></symbol>
</defs></svg>
<script>!function(){var t=function(){try{return new URLSearchParams(window.location.search).get("docusaurus-theme")}catch(t){}}()||function(){try{return window.localStorage.getItem("theme")}catch(t){}}();document.documentElement.setAttribute("data-theme",t||(window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light")),document.documentElement.setAttribute("data-theme-choice",t||"system")}(),function(){try{const c=new URLSearchParams(window.location.search).entries();for(var[t,e]of c)if(t.startsWith("docusaurus-data-")){var a=t.replace("docusaurus-data-","data-");document.documentElement.setAttribute(a,e)}}catch(t){}}()</script><div id="__docusaurus"><div role="region" aria-label="Skip to main content"><a class="skipToContent_fXgn" href="#__docusaurus_skipToContent_fallback">Skip to main content</a></div><nav aria-label="Main" class="theme-layout-navbar navbar navbar--fixed-top navbarHideable_m1mJ"><div class="navbar__inner"><div class="theme-layout-navbar-left navbar__items"><button aria-label="Toggle navigation bar" aria-expanded="false" class="navbar__toggle clean-btn" type="button"><svg width="30" height="30" viewBox="0 0 30 30" aria-hidden="true"><path stroke="currentColor" stroke-linecap="round" stroke-miterlimit="10" stroke-width="2" d="M4 7h22M4 15h22M4 23h22"></path></svg></button><a class="navbar__brand" href="/"><div class="navbar__logo"><img src="/img/lf-docs-light.svg" alt="Langflow" class="themedComponent_mlkZ themedComponent--light_NVdE"><img src="/img/lf-docs-dark.svg" alt="Langflow" class="themedComponent_mlkZ themedComponent--dark_xIcU"></div></a></div><div class="theme-layout-navbar-right navbar__items navbar__items--right"><a href="https://github.com/langflow-ai/langflow" target="_blank" class="navbar__item navbar__link header-github-link" data-event="UI Interaction" data-action="clicked" data-channel="docs" data-element-id="social-github" data-namespace="header" data-platform-title="Langflow"></a><a href="https://twitter.com/langflow_ai" target="_blank" class="navbar__item navbar__link header-twitter-link" data-event="UI Interaction" data-action="clicked" data-channel="docs" data-element-id="social-twitter" data-namespace="header" data-platform-title="Langflow"></a><a href="https://discord.gg/EqksyE2EX9" target="_blank" class="navbar__item navbar__link header-discord-link" data-event="UI Interaction" data-action="clicked" data-channel="docs" data-element-id="social-discord" data-namespace="header" data-platform-title="Langflow"></a><div class="toggle_vylO colorModeToggle_DEke"><button class="clean-btn toggleButton_gllP toggleButtonDisabled_aARS" type="button" disabled="" title="system mode" aria-label="Switch between dark and light mode (currently system mode)"><svg viewBox="0 0 24 24" width="24" height="24" aria-hidden="true" class="toggleIcon_g3eP lightToggleIcon_pyhR"><path fill="currentColor" d="M12,9c1.65,0,3,1.35,3,3s-1.35,3-3,3s-3-1.35-3-3S10.35,9,12,9 M12,7c-2.76,0-5,2.24-5,5s2.24,5,5,5s5-2.24,5-5 S14.76,7,12,7L12,7z M2,13l2,0c0.55,0,1-0.45,1-1s-0.45-1-1-1l-2,0c-0.55,0-1,0.45-1,1S1.45,13,2,13z M20,13l2,0c0.55,0,1-0.45,1-1 s-0.45-1-1-1l-2,0c-0.55,0-1,0.45-1,1S19.45,13,20,13z M11,2v2c0,0.55,0.45,1,1,1s1-0.45,1-1V2c0-0.55-0.45-1-1-1S11,1.45,11,2z M11,20v2c0,0.55,0.45,1,1,1s1-0.45,1-1v-2c0-0.55-0.45-1-1-1C11.45,19,11,19.45,11,20z M5.99,4.58c-0.39-0.39-1.03-0.39-1.41,0 c-0.39,0.39-0.39,1.03,0,1.41l1.06,1.06c0.39,0.39,1.03,0.39,1.41,0s0.39-1.03,0-1.41L5.99,4.58z M18.36,16.95 c-0.39-0.39-1.03-0.39-1.41,0c-0.39,0.39-0.39,1.03,0,1.41l1.06,1.06c0.39,0.39,1.03,0.39,1.41,0c0.39-0.39,0.39-1.03,0-1.41 L18.36,16.95z M19.42,5.99c0.39-0.39,0.39-1.03,0-1.41c-0.39-0.39-1.03-0.39-1.41,0l-1.06,1.06c-0.39,0.39-0.39,1.03,0,1.41 s1.03,0.39,1.41,0L19.42,5.99z M7.05,18.36c0.39-0.39,0.39-1.03,0-1.41c-0.39-0.39-1.03-0.39-1.41,0l-1.06,1.06 c-0.39,0.39-0.39,1.03,0,1.41s1.03,0.39,1.41,0L7.05,18.36z"></path></svg><svg viewBox="0 0 24 24" width="24" height="24" aria-hidden="true" class="toggleIcon_g3eP darkToggleIcon_wfgR"><path fill="currentColor" d="M9.37,5.51C9.19,6.15,9.1,6.82,9.1,7.5c0,4.08,3.32,7.4,7.4,7.4c0.68,0,1.35-0.09,1.99-0.27C17.45,17.19,14.93,19,12,19 c-3.86,0-7-3.14-7-7C5,9.07,6.81,6.55,9.37,5.51z M12,3c-4.97,0-9,4.03-9,9s4.03,9,9,9s9-4.03,9-9c0-0.46-0.04-0.92-0.1-1.36 c-0.98,1.37-2.58,2.26-4.4,2.26c-2.98,0-5.4-2.42-5.4-5.4c0-1.81,0.89-3.42,2.26-4.4C12.92,3.04,12.46,3,12,3L12,3z"></path></svg><svg viewBox="0 0 24 24" width="24" height="24" aria-hidden="true" class="toggleIcon_g3eP systemToggleIcon_QzmC"><path fill="currentColor" d="m12 21c4.971 0 9-4.029 9-9s-4.029-9-9-9-9 4.029-9 9 4.029 9 9 9zm4.95-13.95c1.313 1.313 2.05 3.093 2.05 4.95s-0.738 3.637-2.05 4.95c-1.313 1.313-3.093 2.05-4.95 2.05v-14c1.857 0 3.637 0.737 4.95 2.05z"></path></svg></button></div><div class="navbarSearchContainer_Bca1"><button type="button" class="DocSearch DocSearch-Button" aria-label="Search (Command+K)"><span class="DocSearch-Button-Container"><svg width="20" height="20" class="DocSearch-Search-Icon" viewBox="0 0 20 20" aria-hidden="true"><path d="M14.386 14.386l4.0877 4.0877-4.0877-4.0877c-2.9418 2.9419-7.7115 2.9419-10.6533 0-2.9419-2.9418-2.9419-7.7115 0-10.6533 2.9418-2.9419 7.7115-2.9419 10.6533 0 2.9419 2.9418 2.9419 7.7115 0 10.6533z" stroke="currentColor" fill="none" fill-rule="evenodd" stroke-linecap="round" stroke-linejoin="round"></path></svg><span class="DocSearch-Button-Placeholder">Search</span></span><span class="DocSearch-Button-Keys"></span></button></div></div></div><div role="presentation" class="navbar-sidebar__backdrop"></div></nav><div id="__docusaurus_skipToContent_fallback" class="theme-layout-main main-wrapper mainWrapper_z2l0"><div class="docsWrapper_hBAB"><button aria-label="Scroll back to top" class="clean-btn theme-back-to-top-button backToTopButton_sjWU" type="button"></button><div class="docRoot_UBD9"><aside class="theme-doc-sidebar-container docSidebarContainer_YfHR"><div class="sidebarViewport_aRkj"><div class="sidebar_njMd sidebarWithHideableNavbar_wUlq"><a tabindex="-1" class="sidebarLogo_isFc" href="/"><img src="/img/lf-docs-light.svg" alt="Langflow" class="themedComponent_mlkZ themedComponent--light_NVdE"><img src="/img/lf-docs-dark.svg" alt="Langflow" class="themedComponent_mlkZ themedComponent--dark_xIcU"></a><nav aria-label="Docs sidebar" class="menu thin-scrollbar menu_SIkG"><ul class="theme-doc-sidebar-menu menu__list"><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed"><div class="menu__list-item-collapsible"><a class="menu__link menu__link--sublist menu__link--sublist-caret" role="button" aria-expanded="false" href="/">Get started</a></div></li><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed"><div class="menu__list-item-collapsible"><a class="menu__link menu__link--sublist menu__link--sublist-caret" role="button" aria-expanded="false" href="/concepts-overview">Flows</a></div></li><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed"><div class="menu__list-item-collapsible"><a class="menu__link menu__link--sublist menu__link--sublist-caret" role="button" aria-expanded="false" href="/agents">Agents</a></div></li><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed"><div class="menu__list-item-collapsible"><a class="menu__link menu__link--sublist menu__link--sublist-caret" role="button" aria-expanded="false" href="/mcp-client">Model Context Protocol (MCP)</a></div></li><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed"><div class="menu__list-item-collapsible"><a class="menu__link menu__link--sublist menu__link--sublist-caret" role="button" aria-expanded="false" href="/api-keys-and-authentication">Develop</a></div></li><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed"><div class="menu__list-item-collapsible"><a class="menu__link menu__link--sublist menu__link--sublist-caret" role="button" aria-expanded="false" href="/deployment-overview">Deploy</a></div></li><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item"><div class="menu__list-item-collapsible"><a class="menu__link menu__link--sublist menu__link--sublist-caret menu__link--active" role="button" aria-expanded="true" href="/concepts-components">Components reference</a></div><ul class="menu__list"><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class="menu__link" tabindex="0" href="/concepts-components">Components overview</a></li><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-2 menu__list-item"><div class="menu__list-item-collapsible"><a class="menu__link menu__link--sublist menu__link--sublist-caret menu__link--active" role="button" aria-expanded="true" tabindex="0" href="/chat-input-and-output">Core components</a></div><ul class="menu__list"><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-3 menu__list-item menu__list-item--collapsed"><div class="menu__list-item-collapsible"><a class="menu__link menu__link--sublist menu__link--sublist-caret" role="button" aria-expanded="false" tabindex="0" href="/chat-input-and-output">Input / Output</a></div></li><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-3 menu__list-item"><div class="menu__list-item-collapsible"><a class="menu__link menu__link--sublist menu__link--sublist-caret menu__link--active" role="button" aria-expanded="true" tabindex="0" href="/data-operations">Processing</a></div><ul class="menu__list"><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-4 menu__list-item"><a class="menu__link" tabindex="0" href="/data-operations">Data Operations</a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-4 menu__list-item"><a class="menu__link menu__link--active" aria-current="page" tabindex="0" href="/dataframe-operations">DataFrame Operations</a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-4 menu__list-item"><a class="menu__link" tabindex="0" href="/dynamic-create-data">Dynamic Create Data</a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-4 menu__list-item"><a class="menu__link" tabindex="0" href="/parser">Parser</a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-4 menu__list-item"><a class="menu__link" tabindex="0" href="/split-text">Split Text</a></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-4 menu__list-item"><a class="menu__link" tabindex="0" href="/type-convert">Type Convert</a></li></ul></li><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-3 menu__list-item menu__list-item--collapsed"><div class="menu__list-item-collapsible"><a class="menu__link menu__link--sublist menu__link--sublist-caret" role="button" aria-expanded="false" tabindex="0" href="/api-request">Data Source</a></div></li><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-3 menu__list-item menu__list-item--collapsed"><div class="menu__list-item-collapsible"><a class="menu__link menu__link--sublist menu__link--sublist-caret" role="button" aria-expanded="false" tabindex="0" href="/directory">Files</a></div></li><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-3 menu__list-item menu__list-item--collapsed"><div class="menu__list-item-collapsible"><a class="menu__link menu__link--sublist menu__link--sublist-caret" role="button" aria-expanded="false" tabindex="0" href="/if-else">Flow Controls</a></div></li><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-3 menu__list-item menu__list-item--collapsed"><div class="menu__list-item-collapsible"><a class="menu__link menu__link--sublist menu__link--sublist-caret" role="button" aria-expanded="false" tabindex="0" href="/batch-run">LLM Operations</a></div></li><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-3 menu__list-item menu__list-item--collapsed"><div class="menu__list-item-collapsible"><a class="menu__link menu__link--sublist menu__link--sublist-caret" role="button" aria-expanded="false" tabindex="0" href="/components-models">Models and Agents</a></div></li><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-3 menu__list-item menu__list-item--collapsed"><div class="menu__list-item-collapsible"><a class="menu__link menu__link--sublist menu__link--sublist-caret" role="button" aria-expanded="false" tabindex="0" href="/calculator">Utilities</a></div></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-3 menu__list-item"><a class="menu__link" tabindex="0" href="/legacy-core-components">Legacy core components</a></li></ul></li><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-2 menu__list-item menu__list-item--collapsed"><div class="menu__list-item-collapsible"><a class="menu__link menu__link--sublist menu__link--sublist-caret" role="button" aria-expanded="false" tabindex="0" href="/components-bundle-components">Bundles</a></div></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-2 menu__list-item"><a class="menu__link" tabindex="0" href="/components-custom-components">Create custom Python components</a></li></ul></li><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed"><div class="menu__list-item-collapsible"><a class="menu__link menu__link--sublist menu__link--sublist-caret" role="button" aria-expanded="false" href="/api-reference-api-examples">API reference</a></div></li><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed"><div class="menu__list-item-collapsible"><a class="menu__link menu__link--sublist menu__link--sublist-caret" role="button" aria-expanded="false" href="/contributing-community">Contribute</a></div></li><li class="theme-doc-sidebar-item-category theme-doc-sidebar-item-category-level-1 menu__list-item menu__list-item--collapsed"><div class="menu__list-item-collapsible"><a class="menu__link menu__link--sublist menu__link--sublist-caret" role="button" aria-expanded="false" href="/troubleshoot">Support</a></div></li><li class="theme-doc-sidebar-item-link theme-doc-sidebar-item-link-level-1 sidebar-ad">
<a href="https://www.langflow.org/desktop" target="_blank" class="menu__link">
<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
<g clip-path="url(#clip0_1645_37)">
<path d="M12 17H20C21.1046 17 22 16.1046 22 15V13M12 17H4C2.89543 17 2 16.1046 2 15V5C2 3.89543 2.89543 3 4 3H10M12 17V21M8 21H12M12 21H16M11.75 10.2917H13.2083L16.125 7.375H17.5833L20.5 4.45833H21.9583M16.125 11.75H17.5833L20.5 8.83333H21.9583M11.75 5.91667H13.2083L16.125 3H17.5833" stroke="currentColor" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
</g>
<defs>
<clipPath id="clip0_1645_37">
<rect width="24" height="24" fill="white"/>
</clipPath>
</defs>
</svg>
<div class="sidebar-ad-text-container">
<span class="sidebar-ad-text">Get started in minutes</span>
<span class="sidebar-ad-text sidebar-ad-text-gradient">Download Langflow Desktop</span>
</div>
</a>
</li></ul></nav></div></div></aside><main class="docMainContainer_TBSr"><div class="container padding-top--md padding-bottom--lg"><div class="row"><div class="col docItemCol_VOVn"><div class="docItemContainer_Djhp"><article><nav class="theme-doc-breadcrumbs breadcrumbsContainer_Z_bl" aria-label="Breadcrumbs"><ul class="breadcrumbs"><li class="breadcrumbs__item"><a aria-label="Home page" class="breadcrumbs__link" href="/"><svg viewBox="0 0 24 24" class="breadcrumbHomeIcon_YNFT"><path d="M10 19v-5h4v5c0 .55.45 1 1 1h3c.55 0 1-.45 1-1v-7h1.7c.46 0 .68-.57.33-.87L12.67 3.6c-.38-.34-.96-.34-1.34 0l-8.36 7.53c-.34.3-.13.87.33.87H5v7c0 .55.45 1 1 1h3c.55 0 1-.45 1-1z" fill="currentColor"></path></svg></a></li><li class="breadcrumbs__item"><span class="breadcrumbs__link">Components reference</span></li><li class="breadcrumbs__item"><span class="breadcrumbs__link">Core components</span></li><li class="breadcrumbs__item"><span class="breadcrumbs__link">Processing</span></li><li class="breadcrumbs__item breadcrumbs__item--active"><span class="breadcrumbs__link">DataFrame Operations</span></li></ul></nav><div class="tocCollapsible_ETCw theme-doc-toc-mobile tocMobile_ITEo"><button type="button" class="clean-btn tocCollapsibleButton_TO0P">On this page</button></div><div class="theme-doc-markdown markdown"><header><h1>DataFrame Operations</h1></header><p>The <strong>DataFrame Operations</strong> component performs operations on <a href="/data-types#dataframe"><code>DataFrame</code></a> (table) rows and columns, including schema changes, record changes, sorting, and filtering.
For all options, see <a href="#dataframe-operations-parameters">DataFrame Operations parameters</a>.</p>
<p>The output is a new <code>DataFrame</code> containing the modified data after running the selected operation.</p>
<h2 class="anchor anchorWithHideOnScrollNavbar_WYt5" id="use-the-dataframe-operations-component-in-a-flow">Use the DataFrame Operations component in a flow<a href="#use-the-dataframe-operations-component-in-a-flow" class="hash-link" aria-label="Direct link to Use the DataFrame Operations component in a flow" title="Direct link to Use the DataFrame Operations component in a flow"></a></h2>
<p>The following steps explain how to configure a <strong>DataFrame Operations</strong> component in a flow.
You can follow along with an example or use your own flow.
The only requirement is that the preceding component must create <code>DataFrame</code> output that you can pass to the <strong>DataFrame Operations</strong> component.</p>
<ol>
<li>
<p>Create a new flow or use an existing flow.</p>
<details class="details_lb9f alert alert--info details_b_Ee" data-collapsed="true"><summary>Example: API response extraction flow</summary><div><div class="collapsibleContent_i85q"><p>The following example flow uses five components to extract <code>Data</code> from an API response, transform it to a <code>DataFrame</code>, and then perform further processing on the tabular data using a <strong>DataFrame Operations</strong> component.
The sixth component, <strong>Chat Output</strong>, is optional in this example.
It only serves as a convenient way for you to view the final output in the <strong>Playground</strong>, rather than inspecting the component logs.</p><p><img decoding="async" loading="lazy" alt="A flow that ingests an API response, extracts it to a DataFrame with a Smart Transform component, and the processes it through a DataFrame Operations component" src="/assets/images/component-dataframe-operations-031488ccf4e3d3378f8842f0ea10682c.png" width="4000" height="2120" class="img_ev3q"></p><p>If you want to use this example to test the <strong>DataFrame Operations</strong> component, do the following:</p><ol>
<li>
<p>Create a flow with the following components:</p>
<ul>
<li><strong>API Request</strong></li>
<li><strong>Language Model</strong></li>
<li><strong>Smart Transform</strong></li>
<li><strong>Type Convert</strong></li>
</ul>
</li>
<li>
<p>Configure the <a href="/smart-transform"><strong>Smart Transform</strong> component</a> and its dependencies:</p>
<ul>
<li><strong>API Request</strong>: Configure the <a href="/api-request"><strong>API Request</strong> component</a> to get JSON data from an endpoint of your choice, and then connect the <strong>API Response</strong> output to the <strong>Smart Transform</strong> component&#x27;s <strong>Data</strong> input.</li>
<li><strong>Language Model</strong>: Select your preferred provider and model, and then enter a valid API key.
Change the output to <strong>Language Model</strong>, and then connect the <code>LanguageModel</code> output to the <strong>Smart Transform</strong> component&#x27;s <strong>Language Model</strong> input.</li>
<li><strong>Smart Transform</strong>: In the <strong>Instructions</strong> field, enter natural language instructions to extract data from the API response.
Your instructions depend on the response content and desired outcome.
For example, if the response contains a large <code>result</code> field, you might provide instructions like <code>explode the result field out into a Data object</code>.</li>
</ul>
</li>
<li>
<p>Convert the <strong>Smart Transform</strong> component&#x27;s <code>Data</code> output to <code>DataFrame</code>:</p>
<ol>
<li>Connect the <strong>Filtered Data</strong> output to the <strong>Type Convert</strong> component&#x27;s <strong>Data</strong> input.</li>
<li>Set the <strong>Type Convert</strong> component&#x27;s <strong>Output Type</strong> to <strong>DataFrame</strong>.</li>
</ol>
</li>
</ol><p>Now the flow is ready for you to add the <strong>DataFrame Operations</strong> component.</p></div></div></details>
</li>
<li>
<p>Add a <strong>DataFrame Operations</strong> component to the flow, and then connect <code>DataFrame</code> output from another component to the <strong>DataFrame</strong> input.</p>
<p>All operations in the <strong>DataFrame Operations</strong> component require at least one <code>DataFrame</code> input from another component.
If a component doesn&#x27;t produce <code>DataFrame</code> output, you can use another component, such as the <a href="/type-convert"><strong>Type Convert</strong> component</a>, to reformat the data before passing it to the <strong>DataFrame Operations</strong> component.
Alternatively, you could consider using a component that is designed to process the original data type, such as the <a href="/parser"><strong>Parser</strong> component</a> or <a href="/data-operations"><strong>Data Operations</strong> component</a>.</p>
<p>If you are following along with the example flow, connect the <strong>Type Convert</strong> component&#x27;s <strong>DataFrame Output</strong> port to the <strong>DataFrame</strong> input.</p>
</li>
<li>
<p>In the <strong>Operations</strong> field, select the operation you want to perform on the incoming <code>DataFrame</code>.
For example, the <strong>Filter</strong> operation filters the rows based on a specified column and value.</p>
<div class="theme-admonition theme-admonition-tip admonition_xJq3 alert alert--success"><div class="admonitionHeading_Gvgb"><span class="admonitionIcon_Rf37"><svg viewBox="0 0 12 16"><path fill-rule="evenodd" d="M6.5 0C3.48 0 1 2.19 1 5c0 .92.55 2.25 1 3 1.34 2.25 1.78 2.78 2 4v1h5v-1c.22-1.22.66-1.75 2-4 .45-.75 1-2.08 1-3 0-2.81-2.48-5-5.5-5zm3.64 7.48c-.25.44-.47.8-.67 1.11-.86 1.41-1.25 2.06-1.45 3.23-.02.05-.02.11-.02.17H5c0-.06 0-.13-.02-.17-.2-1.17-.59-1.83-1.45-3.23-.2-.31-.42-.67-.67-1.11C2.44 6.78 2 5.65 2 5c0-2.2 2.02-4 4.5-4 1.22 0 2.36.42 3.22 1.19C10.55 2.94 11 3.94 11 5c0 .66-.44 1.78-.86 2.48zM4 14h5c-.23 1.14-1.3 2-2.5 2s-2.27-.86-2.5-2z"></path></svg></span>tip</div><div class="admonitionContent_BuS1"><p>You can select only one operation.
If you need to perform multiple operations on the data, you can chain multiple <strong>DataFrame Operations</strong> components together to execute each operation in sequence.
For more complex multi-step operations, like dramatic schema changes or pivots, consider using an LLM-powered component, like the <a href="/structured-output"><strong>Structured Output</strong> component</a> or <a href="/smart-transform"><strong>Smart Transform</strong> component</a>, as a replacement or preparation for the <strong>DataFrame Operations</strong> component.</p></div></div>
<p>If you&#x27;re following along with the example flow, select any operation that you want to apply to the data that was extracted by the <strong>Smart Transform</strong> component.
To view the contents of the incoming <code>DataFrame</code>, click <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-play" aria-hidden="true"><polygon points="6 3 20 12 6 21 6 3"></polygon></svg> <strong>Run component</strong> on the <strong>Type Convert</strong> component, and then <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-text-search" aria-hidden="true"><path d="M21 6H3"></path><path d="M10 12H3"></path><path d="M10 18H3"></path><circle cx="17" cy="15" r="3"></circle><path d="m21 19-1.9-1.9"></path></svg> <strong>Inspect output</strong>.
If the <code>DataFrame</code> seems malformed, click <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-text-search" aria-hidden="true"><path d="M21 6H3"></path><path d="M10 12H3"></path><path d="M10 18H3"></path><circle cx="17" cy="15" r="3"></circle><path d="m21 19-1.9-1.9"></path></svg> <strong>Inspect output</strong> on each upstream component to determine where the error occurs, and then modify your flow&#x27;s configuration as needed.
For example, if the <strong>Smart Transform</strong> component didn&#x27;t extract the expected fields, modify your instructions or verify that the given fields are present in the <strong>API Response</strong> output.</p>
</li>
<li>
<p>Configure the operation&#x27;s parameters.
The specific parameters depend on the selected operation.
For example, if you select the <strong>Filter</strong> operation, you must define a filter condition using the <strong>Column Name</strong>, <strong>Filter Value</strong>, and <strong>Filter Operator</strong> parameters.
For more information, see <a href="#dataframe-operations-parameters">DataFrame Operations parameters</a></p>
</li>
<li>
<p>To test the flow, click <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-play" aria-hidden="true"><polygon points="6 3 20 12 6 21 6 3"></polygon></svg> <strong>Run component</strong> on the <strong>DataFrame Operations</strong> component, and then click <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-text-search" aria-hidden="true"><path d="M21 6H3"></path><path d="M10 12H3"></path><path d="M10 18H3"></path><circle cx="17" cy="15" r="3"></circle><path d="m21 19-1.9-1.9"></path></svg> <strong>Inspect output</strong> to view the new <code>DataFrame</code> created from the <strong>Filter</strong> operation.</p>
<p>If you want to view the output in the <strong>Playground</strong>, connect the <strong>DataFrame Operations</strong> component&#x27;s output to a <strong>Chat Output</strong> component, rerun the <strong>DataFrame Operations</strong> component, and then click <strong>Playground</strong>.</p>
</li>
</ol>
<p>For another example, see <a href="/loop#conditional-looping">Conditional looping</a>.</p>
<h2 class="anchor anchorWithHideOnScrollNavbar_WYt5" id="dataframe-operations-parameters">DataFrame Operations parameters<a href="#dataframe-operations-parameters" class="hash-link" aria-label="Direct link to DataFrame Operations parameters" title="Direct link to DataFrame Operations parameters"></a></h2>
<p>Most <strong>DataFrame Operations</strong> parameters are conditional because they only apply to specific operations.</p>
<p>The only permanent parameters are <strong>DataFrame</strong> (<code>df</code>), which is the <code>DataFrame</code> input, and <strong>Operation</strong> (<code>operation</code>), which is the operation to perform on the <code>DataFrame</code>.
Once you select an operation, the conditional parameters for that operation appear on the <strong>DataFrame Operations</strong> component.</p>
<div class="tabs-container tabList__CuJ"><ul role="tablist" aria-orientation="horizontal" class="tabs"><li role="tab" tabindex="0" aria-selected="true" class="tabs__item tabItem_LNqP tabs__item--active">Add Column</li><li role="tab" tabindex="-1" aria-selected="false" class="tabs__item tabItem_LNqP">Drop Column</li><li role="tab" tabindex="-1" aria-selected="false" class="tabs__item tabItem_LNqP">Filter</li><li role="tab" tabindex="-1" aria-selected="false" class="tabs__item tabItem_LNqP">Head</li><li role="tab" tabindex="-1" aria-selected="false" class="tabs__item tabItem_LNqP">Rename Column</li><li role="tab" tabindex="-1" aria-selected="false" class="tabs__item tabItem_LNqP">Replace Value</li><li role="tab" tabindex="-1" aria-selected="false" class="tabs__item tabItem_LNqP">Select Columns</li><li role="tab" tabindex="-1" aria-selected="false" class="tabs__item tabItem_LNqP">Sort</li><li role="tab" tabindex="-1" aria-selected="false" class="tabs__item tabItem_LNqP">Tail</li><li role="tab" tabindex="-1" aria-selected="false" class="tabs__item tabItem_LNqP">Drop Duplicates</li></ul><div class="margin-top--md"><div role="tabpanel" class="tabItem_Ymn6"><p>The <strong>Add Column</strong> operation allows you to add a new column to the <code>DataFrame</code> with a constant value.</p><p>The parameters are <strong>New Column Name</strong> (<code>new_column_name</code>) and <strong>New Column Value</strong> (<code>new_column_value</code>).</p></div><div role="tabpanel" class="tabItem_Ymn6" hidden=""><p>The <strong>Drop Column</strong> operation allows you to remove a column from the <code>DataFrame</code>, specified by <strong>Column Name</strong> (<code>column_name</code>).</p></div><div role="tabpanel" class="tabItem_Ymn6" hidden=""><p>The <strong>Filter</strong> operation allows you to filter the <code>DataFrame</code> based on a specified condition.
The output is a <code>DataFrame</code> containing only the rows that matched the filter condition.</p><p>Provide the following parameters:</p><ul>
<li><strong>Column Name</strong> (<code>column_name</code>): The name of the column to filter on.</li>
<li><strong>Filter Value</strong> (<code>filter_value</code>): The value to filter on.</li>
<li><strong>Filter Operator</strong> (<code>filter_operator</code>): The operator to use for filtering, one of <code>equals</code> (default), <code>not equals</code>, <code>contains</code>, <code>not contains</code>, <code>starts with</code>, <code>ends with</code>, <code>greater than</code>, or <code>less than</code>.</li>
</ul></div><div role="tabpanel" class="tabItem_Ymn6" hidden=""><p>The <strong>Head</strong> operation allows you to retrieve the first <code>n</code> rows of the <code>DataFrame</code>, where <code>n</code> is set in <strong>Number of Rows</strong> (<code>num_rows</code>).
The default is <code>5</code>.</p><p>The output is a <code>DataFrame</code> containing only the selected rows.</p></div><div role="tabpanel" class="tabItem_Ymn6" hidden=""><p>The <strong>Rename Column</strong> operation allows you to rename an existing column in the <code>DataFrame</code>.</p><p>The parameters are <strong>Column Name</strong> (<code>column_name</code>), which is the current name, and <strong>New Column Name</strong> (<code>new_column_name</code>).</p></div><div role="tabpanel" class="tabItem_Ymn6" hidden=""><p>The <strong>Replace Value</strong> operation allows you to replace values in a specific column of the <code>DataFrame</code>.
This operation replaces a target value with a new value.
All cells matching the target value are replaced with the new value in the new <code>DataFrame</code> output.</p><p>Provide the following parameters:</p><ul>
<li><strong>Column Name</strong> (<code>column_name</code>): The name of the column to modify.</li>
<li><strong>Value to Replace</strong> (<code>replace_value</code>): The value that you want to replace.</li>
<li><strong>Replacement Value</strong> (<code>replacement_value</code>): The new value to use.</li>
</ul></div><div role="tabpanel" class="tabItem_Ymn6" hidden=""><p>The <strong>Select Columns</strong> operation allows you to select one or more specific columns from the <code>DataFrame</code>.</p><p>Provide a list of column names in <strong>Columns to Select</strong> (<code>columns_to_select</code>).
In the visual editor, click <svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-plus" aria-hidden="true"><path d="M5 12h14"></path><path d="M12 5v14"></path></svg> <strong>Add More</strong> to add multiple fields, and then enter one column name in each field.</p><p>The output is a <code>DataFrame</code> containing only the specified columns.</p></div><div role="tabpanel" class="tabItem_Ymn6" hidden=""><p>The <strong>Sort</strong> operation allows you to sort the <code>DataFrame</code> on a specific column in ascending or descending order.</p><p>Provide the following parameters:</p><ul>
<li><strong>Column Name</strong> (<code>column_name</code>): The name of the column to sort on.</li>
<li><strong>Sort Ascending</strong> (<code>ascending</code>): Whether to sort in ascending or descending order. If enabled (<code>true</code>), sorts in ascending order; if disabled (<code>false</code>), sorts in descending order. Default: Enabled (<code>true</code>)</li>
</ul></div><div role="tabpanel" class="tabItem_Ymn6" hidden=""><p>The <strong>Tail</strong> operation allows you to retrieve the last <code>n</code> rows of the <code>DataFrame</code>, where <code>n</code> is set in <strong>Number of Rows</strong> (<code>num_rows</code>).
The default is <code>5</code>.</p><p>The output is a <code>DataFrame</code> containing only the selected rows.</p></div><div role="tabpanel" class="tabItem_Ymn6" hidden=""><p>The <strong>Drop Duplicates</strong> operation removes rows from the <code>DataFrame</code> by identifying all duplicate values within a single column.</p><p>The only parameter is the <strong>Column Name</strong> (<code>column_name</code>).</p><p>When the flow runs, all rows with duplicate values in the given column are removed.
The output is a <code>DataFrame</code> containing all columns from the original <code>DataFrame</code>, but only rows with non-duplicate values.</p></div></div></div></div></article><nav class="docusaurus-mt-lg pagination-nav" aria-label="Docs pages"><a class="pagination-nav__link pagination-nav__link--prev" href="/data-operations"><div class="pagination-nav__sublabel">Previous</div><div class="pagination-nav__label">Data Operations</div></a><a class="pagination-nav__link pagination-nav__link--next" href="/dynamic-create-data"><div class="pagination-nav__sublabel">Next</div><div class="pagination-nav__label">Dynamic Create Data</div></a></nav></div></div><div class="col col--3"><div class="tableOfContents_bqdL thin-scrollbar theme-doc-toc-desktop"><ul class="table-of-contents table-of-contents__left-border"><li><a href="#use-the-dataframe-operations-component-in-a-flow" class="table-of-contents__link toc-highlight">Use the DataFrame Operations component in a flow</a></li><li><a href="#dataframe-operations-parameters" class="table-of-contents__link toc-highlight">DataFrame Operations parameters</a></li></ul></div></div></div></div></main></div></div></div><footer class="theme-layout-footer footer"><div class="container container-fluid"><div class="row footer__links"><div class="theme-layout-footer-column col footer__col"><div class="footer__title"></div><ul class="footer__items clean-list"><li class="footer__item"><div class="footer-links">
<span>© 2026 Langflow</span>
<span id="preferenceCenterContainer"> ·&nbsp; <a href="#" onclick='return"undefined"!=typeof window&&window.truste&&window.truste.eu&&window.truste.eu.clickListener&&window.truste.eu.clickListener(),!1' style="cursor: pointer;">Manage Privacy Choices</a></span>
</div></li></ul></div></div></div></footer><div style="position:fixed;right:21px;bottom:21px;z-index:100;display:flex;align-items:center;gap:10px;cursor:pointer"><div style="background-color:#f6f6f6;border-radius:50%;width:48px;height:48px;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 4px rgba(0,0,0,0.1)"><img src="/img/langflow-icon-black-transparent.svg" style="width:40px" alt="Search"></div></div></div>
</body>
</html>