Skip to main content
Glama

fill_column_nulls

Replace missing values in a specified column with a chosen replacement value to handle incomplete data in datasets.

Instructions

Fill null/NaN values in a specific column with a specified value.

Returns: ColumnOperationResult with fill details

Examples: # Fill missing names with "Unknown" fill_column_nulls(ctx, "name", "Unknown")

# Fill missing ages with 0 fill_column_nulls(ctx, "age", 0) # Fill missing status with default fill_column_nulls(ctx, "status", "pending") # Fill missing scores with -1 fill_column_nulls(ctx, "score", -1)

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
columnYesColumn name to fill null values in
valueYesValue to use for filling null/NaN values

Implementation Reference

  • The handler function that executes the fill_column_nulls tool logic: fills NaN/null values in the specified column with the given value, counts affected rows, and returns a ColumnOperationResult.
    async def fill_column_nulls( ctx: Annotated[Context, Field(description="FastMCP context for session access")], column: Annotated[str, Field(description="Column name to fill null values in")], value: Annotated[Any, Field(description="Value to use for filling null/NaN values")], ) -> ColumnOperationResult: """Fill null/NaN values in a specific column with a specified value. Returns: ColumnOperationResult with fill details Examples: # Fill missing names with "Unknown" fill_column_nulls(ctx, "name", "Unknown") # Fill missing ages with 0 fill_column_nulls(ctx, "age", 0) # Fill missing status with default fill_column_nulls(ctx, "status", "pending") # Fill missing scores with -1 fill_column_nulls(ctx, "score", -1) """ # Get session_id from FastMCP context session_id = ctx.session_id _session, df = get_session_data(session_id) _validate_column_exists(column, df) # Count nulls before filling nulls_before = int(df[column].isna().sum()) if nulls_before == 0: # No nulls to fill return ColumnOperationResult( operation="fill_nulls", rows_affected=0, columns_affected=[column], ) # Fill null values # Use explicit assignment to avoid downcasting warnings with pd.option_context("future.no_silent_downcasting", True): # noqa: FBT003 filled_series = df[column].fillna(value) if hasattr(filled_series, "infer_objects"): filled_series = filled_series.infer_objects(copy=False) df[column] = filled_series # Verify fills worked nulls_after = int(df[column].isna().sum()) filled_count = nulls_before - nulls_after return ColumnOperationResult( operation="fill_nulls", rows_affected=filled_count, columns_affected=[column], )
  • Registers the fill_column_nulls handler as a tool named 'fill_column_nulls' on the FastMCP column_text_server instance.
    column_text_server.tool(name="fill_column_nulls")(fill_column_nulls)
  • Input schema defined via Annotated types and Pydantic Field descriptions for the tool parameters; output is ColumnOperationResult.
    ctx: Annotated[Context, Field(description="FastMCP context for session access")], column: Annotated[str, Field(description="Column name to fill null values in")], value: Annotated[Any, Field(description="Value to use for filling null/NaN values")], ) -> ColumnOperationResult:

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/jonpspri/databeak'

If you have feedback or need assistance with the MCP directory API, please join our Discord server