Skip to content

Data Operations

Basic Operations

Adding Columns

bool tablr_dataframe_add_column(TablrDataFrame* df, const char* name, TablrSeries* series);

Add a column to the dataframe.

Example:

int ages[] = {25, 30, 35};
TablrSeries* s = tablr_series_create(ages, 3, TABLR_INT32, TABLR_CPU);
tablr_dataframe_add_column(df, "Age", s);

Getting Columns

TablrSeries* tablr_dataframe_get_column(const TablrDataFrame* df, const char* name);

Get a column by name.

Example:

TablrSeries* age_col = tablr_dataframe_get_column(df, "Age");

Removing Columns

bool tablr_dataframe_remove_column(TablrDataFrame* df, const char* name);

Remove a column from the dataframe.

Example:

tablr_dataframe_remove_column(df, "Age");

DataFrame Information

Row and Column Counts

size_t tablr_dataframe_nrows(const TablrDataFrame* df);
size_t tablr_dataframe_ncols(const TablrDataFrame* df);

Get the number of rows and columns.

Example:

printf("Rows: %zu, Columns: %zu\n", 
       tablr_dataframe_nrows(df), 
       tablr_dataframe_ncols(df));

Column Names

char** tablr_dataframe_columns(const TablrDataFrame* df, size_t* count);

Get all column names.

Example:

size_t count;
char** names = tablr_dataframe_columns(df, &count);
for (size_t i = 0; i < count; i++) {
    printf("%s\n", names[i]);
    free(names[i]);
}
free(names);

Viewing Data

Head and Tail

TablrDataFrame* tablr_dataframe_head(const TablrDataFrame* df, size_t n);
TablrDataFrame* tablr_dataframe_tail(const TablrDataFrame* df, size_t n);

Get first or last n rows.

Example:

TablrDataFrame* first_5 = tablr_dataframe_head(df, 5);
TablrDataFrame* last_5 = tablr_dataframe_tail(df, 5);

Printing

void tablr_dataframe_print(const TablrDataFrame* df);

Print dataframe to console.

Example:

tablr_dataframe_print(df);