pandas.DataFrame.from_records#

classmethod DataFrame.from_records(data, index=None, exclude=None, columns=None, coerce_float=False, nrows=None)[source]#

Convert structured or record ndarray to DataFrame.

Creates a DataFrame object from a structured ndarray, or sequence of tuples or dicts.

Parameters:
datastructured ndarray, sequence of tuples or dicts

Structured input data.

indexstr, list of fields, array-like

Field of array to use as the index, alternately a specific set of input labels to use.

excludesequence, default None

Columns or fields to exclude.

columnssequence, default None

Column names to use. If the passed data do not have names associated with them, this argument provides names for the columns. Otherwise, this argument indicates the order of the columns in the result (any names not found in the data will become all-NA columns) and limits the data to these columns if not all column names are provided.

coerce_floatbool, default False

Attempt to convert values of non-string, non-numeric objects (like decimal.Decimal) to floating point, useful for SQL result sets.

nrowsint, default None

Number of rows to read if data is an iterator.

Returns:
DataFrame

See also

DataFrame.from_dict

DataFrame from dict of array-like or dicts.

DataFrame

DataFrame object creation using constructor.

Examples

Data can be provided as a structured ndarray:

>>> data = np.array(
...     [(3, "a"), (2, "b"), (1, "c"), (0, "d")],
...     dtype=[("col_1", "i4"), ("col_2", "U1")],
... )
>>> pd.DataFrame.from_records(data)
   col_1 col_2
0      3     a
1      2     b
2      1     c
3      0     d

Data can be provided as a list of dicts:

>>> data = [
...     {"col_1": 3, "col_2": "a"},
...     {"col_1": 2, "col_2": "b"},
...     {"col_1": 1, "col_2": "c"},
...     {"col_1": 0, "col_2": "d"},
... ]
>>> pd.DataFrame.from_records(data)
   col_1 col_2
0      3     a
1      2     b
2      1     c
3      0     d

Data can be provided as a list of tuples with corresponding columns:

>>> data = [(3, "a"), (2, "b"), (1, "c"), (0, "d")]
>>> pd.DataFrame.from_records(data, columns=["col_1", "col_2"])
   col_1 col_2
0      3     a
1      2     b
2      1     c
3      0     d