American Institutes for Research analysts often need to inspect the dimensions of an assessment data frame before processing it. Write a function that returns every column name and row name while preserving their original order.
The input uses a Python dictionary to represent an R-style data frame:
columns is an ordered list of column-name strings.rows is a list of dictionaries containing the row values.row_names is either a list of row-name strings or None. When it is None, generate default row names using one-based indexing, matching R's conventional default.Return a dictionary with exactly two keys: column_names and row_names. Do not modify the input. Assume the input is valid, column names are unique, and every row has exactly the columns listed in columns.
Input: data_frame, a dictionary with columns, rows, and row_names fields. columns and row_names contain strings; rows contains dictionaries. row_names may be None.
Output: A dictionary containing the ordered lists column_names and row_names.
def extract_dimension_names(data_frame):