def METHOD_NAME():
    # create a dataframe with various types
    df = pd.DataFrame(
        {
            "s": list("abcde"),
            "f": np.arange(5, dtype=float),
            "i": np.arange(5, dtype=int),
            "b": np.array([True, False, True, True, False]),
            "d": pd.date_range("2012-01-01", periods=5, freq="H"),
            "c": pd.Series(list("ababc"), dtype="category"),
            "p": pd.date_range("2012-01-01", periods=5, freq="H").tz_localize("UTC"),
        }
    )
    df_arrow = pa.Table.from_pandas(df).to_pandas(types_mapper=pd.ArrowDtype)
    df_clean = sanitize_dataframe(df_arrow)
    records = df_clean.to_dict(orient="records")
    assert records[0] == {
        "s": "a",
        "f": 0.0,
        "i": 0,
        "b": True,
        "d": "2012-01-01T00:00:00",
        "c": "a",
        "p": "2012-01-01T00:00:00+00:00",
    }
    # Make sure we can serialize to JSON without error
    json.dumps(records)