def from_records( data: Sequence[Sequence[Any]], columns: Sequence[str] | None = None, orient: Literal["col", "row"] | None = None, ) -> DataFrame: """ Construct a DataFrame from a numpy ndarray or sequence of sequences. Note that this is slower than creating from columnar memory. Parameters ---------- data : numpy ndarray or Sequence of sequences Two-dimensional data represented as numpy ndarray or sequence of sequences. columns : Sequence of str, default None Column labels to use for resulting DataFrame. Must match data dimensions. If not specified, columns will be named `column_0`, `column_1`, etc. orient : {'col', 'row'}, default None Whether to interpret two-dimensional data as columns or as rows. If None, the orientation is inferred by matching the columns and data dimensions. If this does not yield conclusive results, column orientation is used. Returns ------- DataFrame Examples -------- >>> data = [[1, 2, 3], [4, 5, 6]] >>> df = pl.from_records(data, columns=["a", "b"]) >>> df shape: (3, 2) ┌─────┬─────┐ │ a ┆ b │ │ --- ┆ --- │ │ i64 ┆ i64 │ ╞═════╪═════╡ │ 1 ┆ 4 │ ├╌╌╌╌╌┼╌╌╌╌╌┤ │ 2 ┆ 5 │ ├╌╌╌╌╌┼╌╌╌╌╌┤ │ 3 ┆ 6 │ └─────┴─────┘ """ if _NUMPY_AVAILABLE and isinstance(data, np.ndarray): warnings.warn( "using `from_records` with a numpy ndarray is deprecated, " "use `from_numpy` instead", DeprecationWarning, ) return DataFrame._from_numpy(data, columns=columns, orient=orient) else: return DataFrame._from_records(data, columns=columns, orient=orient)
def from_records( data: Union[np.ndarray, Sequence[Sequence[Any]]], columns: Optional[Sequence[str]] = None, orient: Optional[str] = None, ) -> DataFrame: """ Construct a DataFrame from a numpy ndarray or sequence of sequences. Parameters ---------- data : numpy ndarray or Sequence of sequences Two-dimensional data represented as numpy ndarray or sequence of sequences. columns : Sequence of str, default None Column labels to use for resulting DataFrame. Must match data dimensions. If not specified, columns will be named `column_0`, `column_1`, etc. orient : {'col', 'row'}, default None Whether to interpret two-dimensional data as columns or as rows. If None, the orientation is inferred by matching the columns and data dimensions. If this does not yield conclusive results, column orientation is used. Returns ------- DataFrame Examples -------- >>> data = [[1, 2, 3], [4, 5, 6]] >>> df = pl.from_records(data, columns=["a", "b"]) >>> df shape: (3, 2) ┌─────┬─────┐ │ a ┆ b │ │ --- ┆ --- │ │ i64 ┆ i64 │ ╞═════╪═════╡ │ 1 ┆ 4 │ ├╌╌╌╌╌┼╌╌╌╌╌┤ │ 2 ┆ 5 │ ├╌╌╌╌╌┼╌╌╌╌╌┤ │ 3 ┆ 6 │ └─────┴─────┘ """ return DataFrame._from_records(data, columns=columns, orient=orient)