Source code for gower_metric.utils.to_array
from collections.abc import Sequence
from typing import Any
import numpy as np
import pandas as pd
from numpy.typing import NDArray
[docs]
def to_array(record: np.ndarray | pd.Series | Sequence[object]) -> NDArray[Any]:
"""
Convert a record to a flat NumPy array of dtype object.
Args:
record (np.ndarray | pd.Series | Sequence[object]): feature values.
Returns:
NDArray[Any]: 1D array of feature values, with original dtype preserved.
"""
if isinstance(record, np.ndarray):
return np.asarray(record.flatten(), dtype=object)
if isinstance(record, pd.Series):
return np.asarray(record.to_numpy(dtype=object))
return np.asarray(record, dtype=object)